IronPython 是用純 c 編寫的
IronPython 是使用託管的 .net(C#)程式碼完整編寫的。因此所有 builtin
python 方法和庫(例如 next()
,int()
等)都在 .net 中寫入。
此示例顯示 len()
的實現,用於不同型別的列表(僅少數):
....
public static int len([NotNull]List/*!*/ list) {
return list.__len__();
}
public static int len([NotNull]PythonTuple/*!*/ tuple) {
return tuple.__len__();
}
public static int len([NotNull]PythonDictionary/*!*/ dict) {
return dict.__len__();
}
….
如果我們需要其他型別來計算長度,請將它們新增到 Builtin.cs
中,它將自動生效。