Python--open()函数

open()函数可以打开一个文件供读取或写入,如果这个函数执行成功,会回传文件对象,这个函数的基本使用格式如下:

file_Obj = open(file [, mode='r' [ , buffering=-1 [ , encoding = None ]]])

常用格式为: file_Obj = open(file, mode='r')

用 [] 括起来的部分为可选参数,即可以使用也可以省略。其中,各个参数所代表的含义如下:

    file_Obj:表示要创建的文件对象,可以自行给予名称,print()函数可以将输出导向此对象,不使用时必须调用 close() 函数手动将打开的文件进行关闭,这样可以避免程序发生不必要的错误。
    file:用字符串列出欲打开的文件名称,该名称要用引号(单引号或双引号都可以)括起来。需要注意的是,如果要打开的文件和当前执行的代码文件位于同一目录,则直接写文件名即可;否则,此参数需要指定打开文件所在的完整路径。文件路径有两种,相对路径,绝对路径。
    mode:可选参数,用于指定打开文件的模式。可选的打开模式如表 1 所示。如果省略,则默认mode='r', 以只读(r)模式打开文件,使用时如果mode='w'或其他,也可以省略mode=,直接写'w'。也可以同时具有多项模式,例如,'wb'代表以二进制文件打开供写入。
    'b'    (第二个字母)打开二进制文件模式
    't'    (第二个字)打开文本(txt)文件模式,这是默认的
    buffering:可选参数,用于指定对文件做读写操作时,是否使用缓冲区(本节后续会详细介绍)。
    encoding:手动设定打开文件时所使用的编码格式,不同平台的 ecoding 参数值也不同,以 Windows 为例,其默认为 cp936(实际上就是 GBK 编码)。

表1:文件打开模式
模式    意义    注意事项
r    只读模式打开文件,读文件内容的指针会放在文件的开头。    操作的文件必须存在。
rb    以二进制格式、采用只读模式打开文件,读文件内容的指针位于文件的开头,一般用于非文本文件,如图片文件、音频文件等。
r+    打开文件后,既可以从头读取文件内容,也可以从开头向文件中写入新的内容,写入的新内容会覆盖文件中等长度的原有内容。
rb+    以二进制格式、采用读写模式打开文件,读写文件的指针会放在文件的开头,通常针对非文本文件(如音频文件)。
w    以只写模式打开文件,若该文件存在,打开时会清空文件中原有的内容。    若文件存在,会清空其原有内容(覆盖文件);反之,则创建新文件。
wb    以二进制格式、只写模式打开文件,一般用于非文本文件(如音频文件)
w+    打开文件后,会对原有内容进行清空,并对该文件有读写权限。
wb+    以二进制格式、读写模式打开文件,一般用于非文本文件
a    打开文件供写入,在文件已经存在的条件下如果原先文件有内容,新写入的数据将附加在后面;如果文件不存在,则会创建新文件。    
ab    以二进制格式打开文件,并采用追加模式,对文件只有写权限。如果该文件已存在,文件指针位于文件末尾(新写入文件会位于已有内容之后);反之,则创建新文件。    
a+    以读写模式打开文件;如果文件存在,文件指针放在文件的末尾(新写入文件会位于已有内容之后);反之,则创建新文件。    
ab+    以二进制模式打开文件,并采用追加模式,对文件具有读写权限,如果文件存在,则文件指针位于文件的末尾(新写入文件会位于已有内容之后);反之,则创建新文件。    
x    打开一个新的文件供写入,如果所打开的文件已经存在会产生错误    

使用print()函数输出数据到文件

    # 将数据输出到文件的实例,其中输出到out1.txt采用'w'模式,输出到out2.txt采用'a'模式
    f1 = open('ou1.txt', mode='w')  # 取代先前数据
    print("Testing for output", file=f1)
    f1.close()
    f2 = open('out2.txt', mode='a')  # 附加数据到后面
    print("Testing for output", file=f2)
    f2.close()

 out1.txt和out2.txt的原始内容均为:

https://blog.csdn.net/weixin_51995147/category_11603484.html?spm=1001.2014.3001.5482

程序运行后:

out1.txt:

Testing for output

out2.txt:

https://blog.csdn.net/weixin_51995147/category_11603484.html?spm=1001.2014.3001.5482Testing for output

 
————————————————
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python-magic是一个Python库,用于识别文件类型。它可以通过读取文件的内容或者文件的扩展名来确定文件的类型。使用Python-magic库,你可以轻松地获取文件的MIME类型和人类可读的信息。要使用Python-magic库,你需要先安装libmagic的DLL。在Windows下,你可以使用pip install python-magic-bin命令来安装。安装完成后,你可以使用import magic来导入库,并使用magic.from_file函数来获取文件的信息。例如,magic.from_file('test.jpg')将返回文件'test.jpg'的信息,而magic.from_file('test.jpg', mime=True)将返回文件'test.jpg'的MIME类型。你还可以使用magic.from_buffer函数从流中读取文件,并获取文件的信息。例如,magic.from_buffer(open('test.jpg', 'rb').read(2048), mime=True)将返回从流中读取的文件的MIME类型。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [Python Magic——函数](https://blog.csdn.net/qq_43701754/article/details/114938389)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Python文件类型识别——python-magic](https://blog.csdn.net/lly1122334/article/details/112275178)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值