精华内容
下载资源
问答
  • python打开文件没有权限
    万次阅读
    2018-06-04 19:53:12

    报错为这个:invalid mode ('w+b') or filename:  或者类似的,一般代码没问题的,大多数原因是因为你要打开或者写入的那个文件你没有关闭,保持打开状态的文件是没权限写入的。

    更多相关内容
  • 不多说了,我犯了低级错误 ,文件路径搞错了 转载于:https://www.cnblogs.com/Mr-wangxd/p/9528547.html

     不多说了,我犯了低级错误 ,文件路径搞错了 

    转载于:https://www.cnblogs.com/Mr-wangxd/p/9528547.html

    展开全文
  • Python——文件打开模式

    千次阅读 2021-07-18 21:23:14
    2.1.1、只读模式打开文件——只读(r) 2.1.2、读写模式打开文件——读写模式(r+) ​ 2.1.3、写模式打开文件——写模式(w) 2.1.4、读写模式打开文件——读写模式(w+) 2.1.5、写模式打开文件(追加内容)...

    目录

    2.1、文件打开模式

    2.1.1、只读模式打开文件——只读(r)

    2.1.2、读写模式打开文件——读写模式(r+)

    2.1.3、写模式打开文件——写模式(w)

    2.1.4、读写模式打开文件——读写模式(w+)

    2.1.5、写模式打开文件(追加内容)——写模式(a)

    2.1.6、读写模式打开文件(追加内容)——读写模式(a)

    2.2、二进制模式打开文件


    关于文件打开模式可以参考下表:(表格来源于:菜鸟教程

    模式描述
    t文本模式 (默认)。
    x写模式,新建一个文件,如果该文件已存在则会报错。
    b二进制模式。
    +打开一个文件进行更新(可读可写)。
    U通用换行模式(不推荐)。
    r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
    rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
    r+打开一个文件用于读写。文件指针将会放在文件的开头。
    rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
    w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
    wb以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
    w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
    wb+以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
    a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
    ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
    a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
    ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

     文件打开模式有很多,但是我们实际用到的就只有六种。

    我们总结一下主要用到的是下面六种。

    模式可做操作若文件不存在是否覆盖文件原来内容
    r只读报错——
    r+可读、可写报错
    w只写创建
    w+ 可读、可写创建
     
    a  只写创建否,追加写
    a+可读、可写创建否,追加写

    下面我们用例子来看,怎么写。(下面所有的例子,为了方便查看,我把文件创建在和Python程序所在的文件夹里面,这样可以直接写文件名称)


    2.1、文件打开模式

    2.1.1、只读模式打开文件——只读(r)

    文件存在的场合:

     这里我尝试文件中写 hello world。报错意思没有写权限。

    文件不存在的场合:

     很明显,出现了文件不存在的错误。

    2.1.2、读写模式打开文件——读写模式(r+)

    文件存在的场合,zxc.txt文件的内容:

    下面我们用读写模式打开文件,并向里面写入hello world。

     这时候文件内容,注意看:光标在h前面。原来的内容被删除。

      

    文件不存在的场合:

      很明显,出现了文件不存在的错误。

    2.1.3、写模式打开文件——写模式(w)

    文件存在的场合,zxc.txt的文件内容:

     下面我们用写模式打开文件,并向里面写入Python。

     文件的内容如下,仔细看:输入的光标位置在最开始。P前面有个光标。

    很明显,删除原来的文件内容,重新写入Python,并且把光标放在文件最开始。

     文件不存在的场合:

    可以看到我的文件夹里面没有zxc.txt。

      下面我们用写模式打开文件,并向里面写入Python。

     这时候我的文件夹:

     可以看到,自己创建了zxc.txt文件。

    文件内容如下,仔细看:输入的光标位置在最开始。P前面有个光标。

     很明显,自己创建了文件,写入Python,并且把光标放在文件最开始。

    既然w是写模式,我们试着读取文件内容看看。这时候的文件内容是Python。

    很明显,出现文件不能读的错误。 

    2.1.4、读写模式打开文件——读写模式(w+)

    文件存在的场合,文件内容:

     既然是读写模式(w+),所以我们先读文件内容,再写入Python,然后再读取文件内容。

    可以看到我们打印文件内容的时候没有报错,但是没有打印出任何内容?

    那我们写入成功了吗?

    很明显写入成功了,但是为什么没有打印出来内容?

    其实是由于读写机制的问题,当一个文件被读或者写一次后,文件中文件指针指向的是整个文件的末尾,再次读时从末尾开始读的话肯定是什么都到。

    文件不存在的场合:可以看到我的文件夹里面没有zxc.txt。

    这时候我们验证读写模式(w+)。

    可以看到创建了文件zxc.txt。 

     文件内容:


    其实文件写模式(w)、读写模式(w+)还可以用作删除文件内容。

    因为他们整个工作原理就是把文件原来的内容删除,然后写入新的内容。

    如果我们写入的内容为空,那么不就是删除文件内容。

    就如同下面这个例子。

    文件内容: 

     可以看到,文件zxc.txt里面有无数个Python。

    下面我们利用读写模式,但是不写入任何内容。

     这时候我们查看文件内容:

     文件内容是空,原来的内容删掉了。

    同理,写模式(w)是一样的。


    2.1.5、写模式打开文件(追加内容)——写模式(a)

    文件存在的场合,文件内容如下:

     下面我们写入内容 hello world

     文件内容:

     可以看到,Python后面追加了hello world。

    文件不存在的场合,可以看到,我的文件夹里没有文件zxc.txt:

     下面我们连续写入内容 hello world 和 Python。

    可以看到zxc.txt被创建 

     文件内容:

     既然是写模式,我们验证一下zxc.txt不能读。

    出现错误不能读。

    2.1.6、读写模式打开文件(追加内容)——读写模式(a+)

    文件存在的场合,文件内容如下:

     下面我们写入内容 hello world

     文件内容:

     可以看到,Python后面追加了hello world。

    文件不存在的场合,可以看到,我的文件夹里没有文件zxc.txt:

     下面我们连续写入内容 hello world 和 Python。

    可以看到zxc.txt被创建 

     文件内容:

     既然是读写模式,我们验证一下zxc.txt可读。

     没有出现错误,但是没有打印出内容。

    原因其实是由于读写机制的问题,当一个文件被读或者写一次后,文件中文件指针指向的是整个文件的末尾,再次读时从末尾开始读的话肯定是什么都到。


     所有模式我们都进行了说明,我们再看一下回顾一下我们整理的文件打开模式表:

    模式可做操作若文件不存在是否覆盖文件原来内容
    r只读报错——
    r+可读、可写报错
    w只写创建
    w+ 可读、可写创建
     
    a  只写创建否,追加写
    a+可读、可写创建否,追加写

    对于第三个参数buffering。

    buffering的可取值有0,1, >1三个

    • 0代表buffer关闭(只适用于二进制模式,也就是我们文件打开模式中带b的,例如rb【二进制只读模式】)
    • 1代表line buffer(只适用于文本模式,也就是我们文件打开模式中的t)
    • >1表示初始化的buffer大小 

    这个参数我没用到过,所以这里我无法进行举例解释了,所以如果需要,还请自行查询。

    2.2、二进制模式打开文件

     我们看到了在文件打开模式中有以下模式:rb、wb……有这种带 b 的。

    什么意思呢?

    就是用二进制的方式打开文件。

    有什么用?

    我们来验证一下:
    创建文件zxc.txt,内容如下:

    下面读取文件:

    很明显,我们出现了以下错误:

    UnicodeDecodeError: 'gbk' codec can't decode byte 0x82 in position 0: incomplete multibyte sequence

    主要原因是因为编码的问题,可能是因为0x82这个字节在gbk编码中没有这个字符,可能原字符是两个字节,在gbk里被解析成了一个字节,导致字符不存在。

    解决方法有两个:一个是二进制读取,一个是改编编码方式。

    二进制读取就是利用rb、wb……

    这就是我们文件打开方式有二进制的原因。

    下面我们进行验证。

    可以看到,二进制就把文件内容读出来了。并且看到原来是中文的句号在gbk里面没有。

    前面的r、w、r+……就是上面讲的读模式、写模式、读写模式等等。配合二进制方式,就可以读取文件了。

     

    展开全文
  • 为什么用python打开文件报错

    千次阅读 2020-12-09 05:03:55
    python打开文件总是出现IOError的原因:1、原因一:打开一个不存在的文件,示例中有意输入了一个不存在的文件名,并试图打开它。程序找不到这个文件名所以引发了IOError。“Traceback(mostrecentcalllast):File"",...

    用python打开文件总是出现IOError的原因:

    1、原因一:打开一个不存在的文件,示例中有意输入了一个不存在的文件名,并试图打开它。程序找不到这个文件名所以引发了IOError。“Traceback (most recent call last): File "", line 1, in IOError: [Errno 2] No such

    file or directory: 'a.txt'”

    2、原因二:文件写入时遇到python error错误原因。有同学遇到了IOError Errno 0错误的情况,在用a+方式打开文件,之后读取该文件内容。修改读取的内容后重新写入文件,在写入时程序也遇到了IOError错误。这时要注意在读取文件之后记得要把文件关闭,当你需要写入文件时,要再将文件以w+方式打开写入。加深学习Python open()函数文件打开、读、写基础操作,可以减少类似情况发生。

    3、原因三:当你不能满足被访问文件所设置的权限时,也会引发IO Error错误,类似这样:“IOError: [Errno 13] Permission denied: 'c:/a.txt'     python permission denied”

    从字面意思来理解就可以知道原因了,是因为我们执行的命令(运行python文件等),没有权限,给一个超级管理员权限就可以了。

    云海天教程网,大量的免费python教程,欢迎在线学习!

    展开全文
  • Linux下打开可执行文件的命令

    千次阅读 2021-02-07 00:55:47
    该filename文件可以无”执行权限”例如:在itzsmfgx文件中写入如下内容#!/bin/sha=”Hello, this is itzsmfgx”echo $aitzsmfgx文件无执行权限,直接在linux上执行sh itzsmfgx即可出结果,如下...
  • 一.文件概述 程序运行时需要将数据加载到内存中,内存中的数据在断电...文本文件是一种由若干字符构成的文件,可以使用文件编辑器进 行阅读或编辑。以 .txt、.c、.py等为后缀的文件都是文本文件。 1.2二进制文件 ...
  • Python中open打开文件时赋予多种权限

    千次阅读 2020-07-07 08:52:16
  • 主要介绍了PyCharm Python运行权限问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
  • Python中,不需要导入外部库来读取和写入文件Python为创建、写入和读取文件提供了内置的函数。...文本文件(古鲁99.txt),我们在这里演示了如何做到这一点第1步)我们声明变量f来打开一个名为textfile.txt的文...
  • python打开文件总是出现IOError的原因:1、原因一:打开一个不存在的文件,示例中有意输入了一个不存在的文件名,并试图打开它。程序找不到这个文件名所以引发了IOError。“Traceback (most recent call last): ...
  • Python open()函数详解:打开指定文件

    千次阅读 2022-04-06 12:11:45
    Python open()函数详解:打开指定文件Python 中,如果想要操作文件,首先需要创建或者打开指定的文件,并创建一个文件对象,而这些工作可以通过内置的 open() 函数实现。 open() 函数用于创建或打开指定文件,该...
  • python打开py文件

    千次阅读 2021-04-27 05:48:33
    .py文件无法用python打开刚刚把python更新到python3.7.2 但是发现之前写的.py的文件双击没有任何我去,你的情况和我一模一样,我也是环境变量和注册表按照网上的方法设置了,却还是只能用idle.bat打开py文件,idle也...
  • python打开文件w和wb,r和rb的区别

    千次阅读 2022-02-05 21:03:41
    是w表示正常写入 wb表示二进制写入 r表示正常 rb表示二进制读取 w和r读取 代码如下 fp=open('/abc','w') fp.write('ab\nas') fp.close()...原文参考:python读取文件时 wb,python文件读写模式 --- r,w,a,r+,w+,a+,rb,wb
  • 广告关闭腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元!... 字节码是一种只能运行在虚拟机上的文件python的字节码默认后缀为.pyc,pytho...
  • Python基础:打开和读写文件

    千次阅读 多人点赞 2019-04-21 00:42:38
    python打开文件有两种写法: 一种是直接open: f = open('/Users/alice/output.txt', 'r') 另一种是使用with open: with open('/Users/alice/output.txt') as f: 有什么区别呢? 因为文件使用完毕后必须...
  • Python可以使用open命令来打开文件file=open("test.txt")#打开文件temp=file.read()#读取文件所有内容print(temp)这里省略了open的另外2个参数,使用默认的只读方式打开。但是如果文件不存在则程序会报错。如果要...
  • 我正试图打开一个文件,如果该文件不存在,我需要创建并打开它进行写入。到目前为止我有:#open file for readingfn = input("Enter file to open:")fh = open(fn,'r')# if file does not exist, create itif (!fh)...
  • python读写json文件

    千次阅读 2022-02-15 13:43:35
    JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成...
  • 我们需要检查当前Windows帐户是否对Windows文件夹具有...但是,据我所知,windows用户可以在没有List folder Conents权限的情况下读取文件夹。在我的测试:创建一个fodler,配置Security,拒绝List folder / re...
  • r :以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 r+:打开一个文件用于读写。文件指针将会放在文件的开头。 rb:以二进制格式打开一个文件用于只读。一般用于非文本文件如图片等。 rb+ :以...
  • 截图快捷键Win+Shift+S 因为我用的是本地账户,故需要增加本地账户获取全部权限。步骤如下: 高级 更改 高级
  • 代码shutil.copyfile(os.path.join(sourcepath+'/'+eachclass+'/...访问后一个路径上的文件valpath+'/'+eachclass+'/'+im,im是一个*.jpg图片,出现permission denied错误 原因分析:这个路径是jupter notebook默认...
  • python 使用os模块自动打开本地文件

    万次阅读 2018-07-09 09:55:26
    os.system('path') #path为文件路径,本目录下可直接写文件名os 为本地模块不需再行安装 运行环境:python3.6    os.system('path') #path 为文件路径 os.sep:取代操作系统特定的路径分隔符 os.name:指示你...
  • ![图片说明](https://img-ask.csdn.net/upload/201901/03/1546507520_736393.png) 打开C盘的不行,又试了D盘的还是不行。
  • 我想创建一个文件并在python中写一些整数数据。例如,我有一个变量abc = 3,我试图将它写入一个文件(它不存在,我假设python将自己创建): fout = open("newfile.dat", "w") fout.write(abc) 首先,python会...
  • Python文件无法保存?一招教你获取编辑权限】 1.将py文件上一级文件夹权限改为完全控制,点击应用 2.选中py文件将其权限改为完全控制,点击应用 3.进入py文件即可修改保存了哦! ...
  • Python读写文件

    千次阅读 2021-01-15 00:11:42
    给要打开的文件对象指定一个名字,这样可在完成操作之后迅速关闭文件,防止一些无用的文件对象占用内存Python读写文件的五大步骤一、打开文件Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,...
  • 关于文件操作的几种常用方式,网上已有很多解说,内容很丰富,但也因此有些杂乱复杂。今天,我就以我个人的学习经验写一篇详细又易懂的总结文章,希望...打开即默认创建一个新文件,如果文件已存在,则覆盖写(即文...
  • python 文件命令

    千次阅读 2021-01-30 17:33:11
    python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路径:os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()函数用来删除一个文件:os...
  • Python3文件读写打开方法

    千次阅读 2017-10-02 19:44:13
    Python里,可以把文件看成文件的对象。 Python文件打开方式open Python文件读取方式read/readline/readlines Python文件写入方式write/writelines

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,134
精华内容 35,253
关键字:

python打开文件没有权限