我正在尝试从源代码构建 Python-3.7.3,ensurepip但出现此错误:
ModuleNotFoundError: No module named '_ctypes'
Run Code Online (Sandbox Code Playgroud)
网上的所有答案都说这libffi-dev是需要的,但我已经安装了它,但它仍然给我这个错误。
root@4b6d672f1334:/Python-3.7.3# find / -name libffi.*
/usr/lib/pkgconfig/libffi.pc
/usr/lib/libffi.a
/usr/lib/libffi.so
/usr/lib/libffi.so.5.0.10
/usr/lib/libffi.so.5
/usr/share/info/libffi.info.gz
Run Code Online (Sandbox Code Playgroud)
构建位于来自 的容器映像中ubuntu:10.04。它是故意这么旧的,因为我正在使用 PyInstaller 来编译应用程序,并且它需要在具有旧 glibc (2.11) 的计算机上运行,并且此映像是我能找到的唯一具有此旧版本的映像。
我对 Python-2.7.16 做了同样的事情,它工作没有任何问题。
更新 Python-3.6.8 也可以正常工作,没有任何问题
我正在使用一个包含多个条件语句的函数,类似于下面所示的函数:
def apply_function(column, function):
if function == 'function_1':
return function_1(column)
elif function == 'function_2':
return function_2(column)
elif function == 'function_3':
return function_3(column)
elif function == 'function_4':
return function_4(column)
elif function == 'function_5':
return function_5(column)
...
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以减少条件语句的数量并以更Pythonic的方式实现函数并增强性能?
请指教。