一、操作文件
[root@node6 ~]# cat cs.txt
12 13 14
aa bb vv
15 cc 16
二、f.readline()
整行读取`,每次一行,空行也会当做一行读取。
因为文本带了一个 ‘\n’ 了,print 默认也是 ‘\n’,所以读取每一行都会多打印一个空行
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.readline()
print(a)
结果如下图:
可以使用strip()去掉print打印的空格
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.readline().strip() ##这里
print(a)
结果如下图:
2.1可以打印某一行或者全文
打印某一行,把count == 4
改成自己需要的行数即可
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.readline()
counts = 1
while a:
if counts == 4: ##这里
break
a = f.readline()
counts += 1
print(a.strip())
打印全文,建议使用read
三 f.readlines()
1、把读取的内容返回成list
,可以理解成在readline的基础上使用了split方法
2、是遍历内容
3、如果是行,默认是按照空格分割
4、如果是文本,默认按照换行符分割,所以空行也会打印出来
打印行,在上面的例子稍修改一下就可以看出:
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.readline()
counts = 1
while a:
if counts == 4:
break
a = f.readline()
counts += 1
print(a.strip().split()) ##这里
打印文本:
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.readlines()
print(a)
结果如下图:红标空行
四、f.read()
把内容当成一个整体输出,并换行
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.read()
print(a)
结果如下图:
4.1 f.read().split()把文件内容用列表返回,并去掉了空格、换行符
[root@node6 ~]# cat readline.py
#!/usr/bin/python3
# encoding: utf-8
with open("/root/cs.txt", 'r') as f:
a = f.read().split()
print(a)
结果如下图: