python2.7使用open函数打开txt文本文件报错:TypeError: function takes at least 2 arguments (1 given)

错误

使用python进行txt文本的读取,代码如下:
with open(self.getFileFromSd(DATASET_PATH, "node")) as f:
for l in f:
nl.append(l.rstrip('\n').rstrip())

很奇怪的是,一直报错,提示TypeError: function takes at least 2 arguments (1 given),可是网上查到,open函数只需要一个参数就行。
后来试了下
with open(self.getFileFromSd(DATASET_PATH, "node"),'r') as f:
依然没用,报的错变了,提示 integer is required。

解决方法

后来发现,这是由于自己在程序开头引用了from os import *,os里的open函数的确需要两个参数!
方法一:
修改os的引用方式,改为import os as os,并将其他调用os里函数的地方加上“os.”前缀,如ft = os.path.splitext(f)
方法二:
参考os.open()的使用方法,open()方法语法格式如下:
os.open(file, flags[, mode]);
file – 要打开的文件
flags – 打开选项,可以是以下选项,多个使用 “|” 隔开:
os.O_RDONLY: 以只读的方式打开
os.O_WRONLY: 以只写的方式打开
os.O_RDWR : 以读写的方式打开
参考:Python os.open() 方法

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值