open()方法用于打开一个文件,并返回文件对象,在对文件进行处理过程中都需要使用这个函数,文件无法打开时抛出OSError异常。
open()完整的语法格式为:
open(file, mode = 'r', buffering = -1, encoding = None, errors = None, newline = none, closefd = True, opener = None)
1
1
常用形式是只接受前两个参数:文件名(file)和模式(mode)。
open(file, mode = 'r')
1
1
参数说明:
file:必需,文件路径(相对或绝对路径)。
mode:可选,文件打开模式。
buffering:设置缓冲。
encoding:一般使用utf8。
errors:报错级别。
newline:区别换行符。
closefd:传入的file参数类型
opener:设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。
mode(模式)参数有:
模式 描述
t 文本模式(默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
r 以只读方式打开文件。文件的指针将会放在文件的开头,这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
注:
1、open()函数的默认打开模式是‘rt’,即可读、文本的模式打开。
2、使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。
你说的是将py文件打包成exe文件吧,这里介绍1种最简单的方式,利用pyinstaller打包,简单快捷,下面我简单介绍一下利用pyinstaller打包py文件的过程,实验环境win7+python2.7+pycharm5.0,主要内容如下:
为了更好的说明示例过程,我这里利用python的pyqt5写了一个简单的计算器,主要代码如下:
程序运行截图如下,下面的实验也主要是打包这个py文件为exe:
1.首先,下载安装pyinstaller,这里直接在cmd窗口输入命令“pip install pyinstaller”就行,如下:
2.这里为了方便,可以将刚才写好的py文件单独放到一个文件夹中,如下,这里我弄了一个简单的ico图标:
3.打包py文件为exe,这里切换到刚才的目录,直接运行命令“pyinstaller -i calculator.ico -F -w calculator.py”就行,如下,就会自动进行打包:
接着就会在当前目录下边生成build和dist这2个目录,生成的exe文件就在dist目录里边,如下:
如果直接双击运行这个exe文件,会报如下错误,这个是由于没有对应平台的dll文件:
需要将plugins的“platforms”目录复制到这个exe同级目录才能正常运行exe文件,我的platforms路径是“C:\Program Files\Anaconda2\Library\plugins\platforms”,替换成你的路径复制就行,如下:
再双击这个exe文件,程序就能正常运行,如下:
至此,我们就完成了将python的py文件打包成exe文件。总的来说,整个过程挺简单的,熟悉一下流程,很快就能掌握的,网上也有相关资料和教程,感兴趣的可以搜一下,当然,你也可以利用py2exe进行打包,这里我就不详细介绍了,自己找找资料,希望以上分享的内容能对你有所帮助吧。
英文就是ascii编码嘛!
ord(num)显示字符的编码。
然后转化编码为二进制数不就可以了。
为了美化,可以每个数值添加几个零成为8位二进制数,作为一个byte,空格隔开。
Python自建有bin()函数,可是返回的字符是以'0b'开头 # '0b000110'
可以使用下面的函数转换
bin = lambda n : (n > 0) and (bin(n/2) + str(n%2)) or ''
bin(2) # 10
pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法执行的。
总结,以上就是关于python写二进制大文件以及python open函数默认打开方式的经验分享,卡友有疑问可以加wx或扫码加群!Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有