python内置库--fileinput
1 关于fileinput
利用fileinput,我们可以循环遍历标准输入或者多个文件中的数据
它和open()作用很类似, 但是open()只能操作一个文件且相关函数功能没有它丰富
2 函数介绍
fileinput.input(files=None, inplace=False, backup='', *, mode='r', openhook=None, encoding=None, errors=None)
创建一个 FileInput 类的实例,后面的很多函数都会用到该实例
也可用在with中作为上下文管理器
fileinput.filename()
返回当前被读取的文件名。 在第一行被读取之前,返回 None
fileinput.lineno()
返回已被读取的累计行号。 在第一行被读取之前,返回 0。 在最后一个文件的最后一行被读取之后,返回该行的行号
fileinput.isfirstline()
如果刚读取的行是其所在文件的第一行则返回 True,否则返回 False
fileinput.isstdin()
如果最后读取的行来自 sys.stdin 则返回 True,否则返回 False
fileinput.filelineno()
返回当前文件中的行号。 在第一行被读取之前,返回 0。 在最后一个文件的最后一行被读取之后,返回此文件中该行的行号
fileinput.close()
执行
执行
保存下面内容为filinput eg.py
在命令行进入文本文件所在目录, 执行
这样,文件参数放在命令行 ,fileinput从命令行读取数据
总结:
1 相比于open() fileinput()提供了更丰富的功能获取文件相关属性(文件名 行数等),且能一次作用于多个文件,更适合拿来读写文件
2 fileinput能直接从标准输入中读取参数 ,使用更加方便