对Python w和w+权限的区别详解

yipeiwu_com6年前Python基础

今日上课,有位同学问到:w和w+有何区别呢。

说实话,我们经常只是用一种权限,没用在意之间的区别,实际上,w+具有可读可写权限,而w只有可写权限。

下面上代码:

  fd=open('d:\\test.txt','w+') 

  fd.write('123')

  fd.close()

如果这样用,确实两者没有区别,但是在下面就有区别了。

  fd=open('d:\\test.txt','w+') 
  fd.write('123')
  fd.seek(0)
  print(fd.read())

  fd.close() #首先写信息,然后定位到文件开头,读文件信息。

如果w+改成w就会出错,提示信息:io.UnsupportedOperation: not readable,意思就是没有读的权限,只要是w+,程序就没有任何问题了。

以后大家如果同时读写就用+,但别忘了文件要重新定位到开头。

好了,大家学习愉快!

以上这篇对Python w和w+权限的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python leetcode 字符串相乘实例详解

给定两个以字符串形式表示的非负整数 num1 和  num2 ,返回  num1 和  num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入:...

使用Python进行二进制文件读写的简单方法(推荐)

总的感觉,python本身并没有对二进制进行支持,不过提供了一个模块来弥补,就是struct模块。 python没有二进制类型,但可以存储二进制类型的数据,就是用string字符串类型来...

Python中lambda的用法及其与def的区别解析

python中的lambda通常是用来在python中创建匿名函数的,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python中的lambda还有如下几点和def不一样...

Python使用遗传算法解决最大流问题

Python使用遗传算法解决最大流问题

本文为大家分享了Python遗传算法解决最大流问题,供大家参考,具体内容如下 Generate_matrix def Generate_matrix(x,y): import...

python中的字典操作及字典函数

字典 dict_fruit = {'apple':'苹果','banana':'香蕉','cherry':'樱桃','avocado':'牛油果','watermelon':'西瓜'...