कोडिंग मैंने अभी यूनी लर्निंग पायथन में अंतिम अर्ध सेमेस्टर बिताया है। मैंने वास्तव में इसका आनंद लिया है, और कुछ 'पायथनिक' कोड लिखने के बारे में कुछ सुझावों की उम्मीद कर रहा था।पाइथन मार्ग
यह हाल ही में किए गए असाइनमेंट से __init__
वर्ग है। जब मैंने इसे लिखा था, तो मैं काम करने की कोशिश कर रहा था कि मैं इसे लैम्ब्स, या एक स्वच्छ, अधिक कुशल तरीके से कैसे लिख सकता हूं, लेकिन समय से बाहर भाग गया।
def __init__(self, dir):
def _read_files(_, dir, files):
for file in files:
if file == "classes.txt":
class_list = readtable(dir+"/"+file)
for item in class_list:
Enrol.class_info_dict[item[0]] = item[1:]
if item[1] in Enrol.classes_dict:
Enrol.classes_dict[item[1]].append(item[0])
else:
Enrol.classes_dict[item[1]] = [item[0]]
elif file == "subjects.txt":
subject_list = readtable(dir+"/"+file)
for item in subject_list:
Enrol.subjects_dict[item[0]] = item[1]
elif file == "venues.txt":
venue_list = readtable(dir+"/"+file)
for item in venue_list:
Enrol.venues_dict[item[0]] = item[1:]
elif file.endswith('.roll'):
roll_list = readlines(dir+"/"+file)
file = os.path.splitext(file)[0]
Enrol.class_roll_dict[file] = roll_list
for item in roll_list:
if item in Enrol.enrolled_dict:
Enrol.enrolled_dict[item].append(file)
else:
Enrol.enrolled_dict[item] = [file]
try:
os.path.walk(dir, _read_files, None)
except:
print "There was a problem reading the directory"
जैसा कि आप देख सकते हैं, यह थोड़ा भारी है। अगर किसी के पास समय या झुकाव है, तो मैं वास्तव में कुछ पायथन सर्वोत्तम प्रथाओं पर कुछ सुझावों की सराहना करता हूं।
धन्यवाद।
नोट: यह 'एनरोल' नामक एक मॉड्यूल का हिस्सा था, जिसमें 'एनरोल' वर्ग होता है जिसके लिए यह '__init__' –
लगता है जैसे आपको सहपाठी मिलती है: http://stackoverflow.com/questions/2943396/python -need-some-help –
यह देखो एस * उल्लेखनीय * जैसे http://stackoverflow.com/questions/2943396/python-need-some-help – Johnsyweb