Некоторые примеры:
управление ресурсами , не идиоматичный:
string content;
StreamReader sr = null;
try {
File.OpenText(path);
content = sr.ReadToEnd();
}
finally {
if (sr != null) {
sr.Close();
}
}
Идиоматичный:
string content;
using (StreamReader sr = File.OpenText(path)) {
content = sr.ReadToEnd();
}
Повторение , не идиоматичный:
for (int i=0;i<list.Count; i++) {
DoSomething(list[i]);
}
Также неидиоматичный:
IEnumerator e = list.GetEnumerator();
do {
DoSomenthing(e.Current);
} while (e.MoveNext());
Идиоматичный:
foreach (Item item in list) {
DoSomething(item);
}
Фильтрация , неидиоматичный:
List<int> list2 = new List<int>();
for (int num in list1) {
if (num>100) list2.Add(num);
}
идиоматичный:
var list2 = list1.Where(num=>num>100);
Посмотрите Поддерживает ли python многопроцессорное / многоядерное программирование?
Затем посмотрите на http://wiki.python.org/moin/ParallelProcessing дополнительные параметры
, но обычно многопроцессорность на Python ( http://docs.python.org/library/multiprocessing.html ) модуля будет достаточно