❶ 什么是pyc文件
pyc文件就是 Python 程序编译后得到的字节码文件 (py->pyc).pyc文件一般由3个部分组成:最开始4个字节是一个Maigc int, 标识此pyc的版本信息, 不同的版本的 Magic 都在 Python/import.c 内定义接下来四个字节还是个int,是pyc产生的时间(1970.01.01到产生pyc时候的秒数)接下来是个序列化了的 PyCodeObject(此结构在 Include/code.h 内定义),序列化方法在 Python/marshal.c 内定义
❷ 怎样运行.pyc文件
pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种bytecode,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的专虚拟机的概念.pyc的内容,是跟python的版本属相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法执行的。
❸ 如何编译生成PYC文件
Python语言编程中如何编译生成PYC文件?(版本Python V 3.4.1)(1) compile() 函数compile() 函数有两个, 一个是内建函数,另一个是模块py_compile中的.前者生成一个Compile对象,它只能在代码中被调用(exec(comp)),不能生成pyc文件。后者必须生成pyc文件,但不能在交互界面运行它(run 和 exec都不行)。 (2) 生成生成pyc文件compile(file, cfile=None, dfile=None, doraise=False, optimize=-1)例子:compile("test.py")compile("test.py", "test.pyc")第一种方法输出文件在子目录__pycache__中,而且文件名是test.python-34.pyc,有两个点,不好!所以一定要用第二种格式输出文件在当前当前目录。其它选项都缺省就行, -1 表示优化,所以pyo文件也不用去做了。 (3) pyc文件的运行不能在python的交互界哗蠢面中运行(run 和氏芦冲 exec都不行)。只能够在DOS屏幕上运行, 格式为:python test.pyc [argv]在程序中调用可以用:os.system ("python test.pyc ") (4)内建函数compile()的语法compile(source, filename, mode[, flags[, dont_inherit]]) -> codeobject。生成一个code对象。例子:yuju = "print('hello')"hc = compile(yuju, "yuju.err", "single")exec(hc)输出:hellotype(hc) –> code使用时至少要提供3个参数,source是源代码,它可以是语句、表达式或代码文件。filename要求一个文件名储存出错信息,mode是编译模式,只歼歼能使用如下3种:exec, eval, single。
❹ python怎么打开pyc文件
关于PyCodeObject和pyc文件:在硬盘上看到的pyc文件,其实PyCodeObject才是Python编译器真正编译成的结果。当python程序运行时,编译的结果是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。所以,我们可以说pyc文件其实是PyCodeObject的一种持久化保存方式。你指的是编辑pyc还是导入pyc?pyc是很难直接编辑的,最好是修改原来的py文件,再生产pyc。导入pyc:假设你的源代码文件是model.py,经过Python37解释器运行后会自动生成modle.cpython-37.pyc。如果要在main.py中导入modle.cpython-37.pyc,需要把文件名中的cpython-37去掉,变成model.pyc,再放到main.py所在的文件夹里,在main.py中添加“import model”,即可导入model。
❺ python文件和解释器版本不同如何解决
手工将2.X版本按2到3的帮助文档,一点点自己改成python3的语法 。因为python2与python3是差异比较大的两个语言。 有些库差异,有些函数也变了。 其实即使是python2的不同大版本,它的pyc也是不兼容的。再说python2也不难获得。 你找个python2编译器就完了。实在不成用jython也可以。 再不成用pypy。现在用python3的人还是少数,都几年了,python3还是少数。没有必要总拿python3来做什么东西。因为python3未必就是方向。
❻ 'mole' object has no attribute 'ManyToOneRel'
因为本地的gyp mole引起1) $ python -c 'import gyp; print gyp.__file__'/usr/lib/python2.6/site-packages/gyp/__init__.pyc移动到某个文件夹2) $ mv /usr/lib/python2.6/site-packages/gyp /usr/lib/python2.6/site-packages/gyp_backup确保python不能橘者找到它3) $ python -c 'import gyp; print gyp.__file__'Traceback (most recent call last): File "<string>", line 1, in <mole>ImportError: No mole named gyp再亮伍仿次执行4) $ sudo sh npm-install.sh能正常启动敬纤game-server
❼ PYC文件怎么打开
这个pyc是 python2.x版本编译的,python的2.x版本与3.x版本差异较大,换个低版本的就可以打开了。
❽ PYC是什么意思
pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法执行的。 不知你的PYC是在何种情境下看到的PYC····
❾ python写的程序怎样加密
对Python加密时可能会有两种形式,一种是对Python转成的exe进行保护,另一种是直接对.py或者.pyc文件进行保护,下面将列举两种形式的保护流程。
1、对python转exe加壳
下载最新版VirboxProtector加壳工具,使用加壳工具直接对demo.exe进行加壳操作
2、对.py/.pyc加密
第一步,使用加壳工具对python安装目录下的python.exe进行加壳,将python.exe拖入到加壳工具VirboxProtector中,配置后直接点击加壳。
第二步,对.py/.pyc进行加密,使用DSProtector对.py/.pyc进行保护。
安全技术:
l虚拟机外壳:精锐5的外壳保护工具,创新性的引入了预分析和自动优化引擎,有效的解决了虚拟化保护代码时的安全性和性能平衡问题。
l碎片代码执行:利用自身成熟的外壳中的代码提取技术,抽取大量、大段代码,加密混淆后在安全环境中执行,最大程度上减少加密锁底层技术和功能的依赖,同时大量大段地移植又保证了更高的安全性。
lVirbox加密编译引擎:集编译、混淆等安全功能于一身,由于在编译阶段介入,可优化空间是普遍虚拟化技术无法比拟的,对代码、变量的混淆程度也有了根本的提升。
l反黑引擎:内置R0级核心态反黑引擎,基于黑客行为特征 的(反黑数据库)反制手段。精准打击调试、注入、内存修改等黑客行为,由被动挨打到主动防护。
加密效果:
加密之前
以pyinstall 的打包方式为例,使用pyinstxtractor.py文件对log_322.exe进行反编译,执行后会生成log_322.exe_extracted文件夹,文件夹内会生成pyc文件。
成功之后会在同目录下生成一个文件夹
❿ python 求一个python pyc文件反编译到py文件的工具,谢啦!!!
pyc大约在python2刚出的时候有。后来就很少找得到了。有一次,不小心把.py删除了,通版过pyc还把代码还原了。权 你搜索uncompyle2, decompyle2, DePython, unpyc, uncompyle, pycdc 等等。 我似乎以前就是用的unpyc听说python2.7而言, uncompyler是最好用的工具。