LINUX.ORG.RU

История изменений

Исправление sniper21, (текущая версия) :

Начну пожалуй.

---
 names.py | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/names.py b/names.py
index 07cee3a..3be3ad2 100644
--- a/names.py
+++ b/names.py
@@ -4,11 +4,11 @@
 import csv
 
 def run():
-    f = open('names.csv', 'r')
-    reader = csv.reader(f, delimiter=',')
-    n = 0
-    mal = 0
-    fem = 0
+    n = mal = fem = 0
+     
+    with open('names.csv', 'r') as handle:
+        reader = csv.reader(handle, delimiter=',')
+    
     for r in reader:
         s = r[2].decode('utf-8').lower()
         if s[-3:] in ['вна', 'чна']:
@@ -20,17 +20,16 @@ def run():
         elif s[-4:] == 'оглы':
             mal += 1
         else:
-#            if len(s) > 0:
             print(r[0], r[1])
         n += 1
         if n % 1000 == 0:
             print(n)
+
     print('Total', n)
     print('- females', fem, fem * 100.0 / n)
     print('- males', mal, mal * 100.0 / n)
     print('- unknown', n - fem - mal)
 
 
-
 if __name__ == '__main__':
-    run()
+    run()
\ No newline at end of file
-- 
2.20.1.windows.1

Исходная версия sniper21, :

Начну пожалуй.

---
 names.py | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/names.py b/names.py
index 07cee3a..3be3ad2 100644
--- a/names.py
+++ b/names.py
@@ -4,11 +4,11 @@
 import csv
 
 def run():
-    f = open('names.csv', 'r')
-    reader = csv.reader(f, delimiter=',')
-    n = 0
-    mal = 0
-    fem = 0
+    n = mal = fem = 0
+     
+    with open('names.csv', 'r') as handle:
+        reader = csv.reader(handle, delimiter=',')
+    
     for r in reader:
         s = r[2].decode('utf-8').lower()
         if s[-3:] in ['вна', 'чна']:
@@ -20,17 +20,16 @@ def run():
         elif s[-4:] == 'оглы':
             mal += 1
         else:
-#            if len(s) > 0:
             print(r[0], r[1])
         n += 1
         if n % 1000 == 0:
             print(n)
+
     print('Total', n)
     print('- females', fem, fem * 100.0 / n)
     print('- males', mal, mal * 100.0 / n)
     print('- unknown', n - fem - mal)
 
 
-
 if __name__ == '__main__':
-    run()
+    run()
\ No newline at end of file
-- 
2.20.1.windows.1