Nuke Python

为什么Nuke不用官方的python版本?

这跟python的编译环境(MSC编译器)有关系,Nuke底层dll文件在调用时,如果编译环境不统一,会报错。
这里有问题:那Nuke为什么不用系统安装的python的编译环境?
Nuke不知道所有用户电脑上安装的python的MSC编译器,也不可能满足所有用户对MSC编译器的需求,只能自己选择一个编译环境
不再要求用户电脑上使用那个编译环境,相当于安装Nuke的时候Nuke软件自己搭建了一个python的编译环境

而Nuke里面那堆dll文件也是用VS2015编译的,所以为了跟Python兼容,就不能用官方的python,而是Nuke自己编译了一个python

编译器指的是源代码到python.exe,而解释器指的是py文件到运行指令

我们最常使用的都是以CPython作为解释器的python,而CPython底层是以C++实现的,那它自然需要一个C++编译器来生成这个python.exe程序
并且,不同版本的python用的编译器版本也不一样

MSC是微软的C编译器,安装对应的VS版本时会带有,两者版本对应如下:
MS VC++ 14.0 _MSC_VER = 1900 (Visual Studio 2015)

MS VC++ 12.0 _MSC_VER = 1800 (VisualStudio 2013)

MS VC++ 11.0 _MSC_VER = 1700 (VisualStudio 2012)

MS VC++ 10.0 _MSC_VER = 1600 (VisualStudio 2010)

MS VC++ 9.0 _MSC_VER = 1500 (VisualStudio 2008)

MS VC++ 8.0 _MSC_VER = 1400 (VisualStudio 2005)

扫描二维码关注公众号,回复: 10161441 查看本文章

MS VC++ 7.1 _MSC_VER = 1310 (VisualStudio 2003)

MS VC++ 7.0 _MSC_VER = 1300 (VisualStudio .NET)

MS VC++ 6.0 _MSC_VER = 1200 (VisualStudio 98)

MS VC++ 5.0 _MSC_VER = 1100 (VisualStudio 97)

①DLL文件是怎么产生的
许多应用程序被分割成一些相对独立的动态链接库,放置于系统中,就产生了DLL文件。

②DLL文件是什么
DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可
执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用序
可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。

③DLL文件有什么用

DLL文件中存放的是各类程序的函数(子过程)实现过程,当程序需要调用函数时需要先载入DLL,然后取得函数的地址,最后进行调用。使用DLL文件的
好处是程序不需要在运行之初加载所有代码,只有在程序需要某个函数的时候才从DLL中取出。另外,使用DLL文件还可以减小程序的体积。

python的编译器与解释器
https://www.cnblogs.com/nelsen-chen/p/9122629.html

python是一种解释性语言,需要借助解释器把代码转换成计算机可以识别的二进制,最后计算机识别

Python 常见文件格式 .py .pyc .pyw .pyo .pyd 之间的主要区别:
http://forum.digitser.cn/thread-1758-1-1.html

几个重要的python内置方法
help()
dir()


'''

猜你喜欢

转载自www.cnblogs.com/WendellChen/p/12568496.html