Python文件操作基本流程代码实例

时间:2022-06-28 08:57:47

文件操作之基本流程

#文本
近日,上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的*“神药”,请放过中国老人》的文章称,
多位眼科医生并不认可莎普爱思滴眼液的“白内障防治功效”。质疑者认为,
莎普爱思滴眼液是“假科普,真营销”,通过广告误导患者。
针对质疑,莎普爱思3日晚发布的公告称,
0.5%苄达 赖氨酸滴眼液已于上世纪90年代通过了临床试验,
是一种安全的、有效的抗白内障药物。假的

?
1
2
3
4
5
6
7
8
9
10
11
#‘r'打开,需要编码
f=open('测试','r',encoding='utf8')
print(f.read(10))
 
#‘w'打开,也需要编码,
f1=open('测试','w',encoding='utf8')
#print(f1.read())
f1.write('hello')
f1.write('world!爱')
f.close()
f1.close()

#‘a'打开,也要编码,和‘w'方式一样,不能够读取
要换行要加\n

?
1
2
3
4
5
6
7
8
9
10
11
12
#读取一行
s=f.readline()
#读取多行,读取是一个列表
s=f.readlines()
for i inf.readlines(): #有.strip()和没有.strip()的区别
  print(i.strip())
number=0
for i inf.readlines():
  number += 1
  if number == 6:
    i= ''.join([i.strip(),'iaiqiu']) #字符串连接,取代万恶的"+"
  print(i.strip())

直接用列表操作更快

?
1
2
data=f.readlines()
data[5]=''.join([data[5],'iaiqiu'])

上面都是闹着玩的,以后读文件肯定不会这样,不可能全部读取到内存里,因为内存可能没有那么大。

?
1
2
for i inf:
  print(i.strip())

这种才是以后使用的,最优的。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#f.tell()和f.seek()方法,tell()方法返回文件位置
print(f.tell())
print(f.read(10))
print(f.tell())
f.seek(0)
print(f.read(10))
f.close()
#flush()方法,sys.stdout是python编辑框文件,idle也是一个文件
importsys,time
for i inrange(20):
  sys.stdout.write('#')
  sys.stdout.flush()
  time.sleep(0.2)
#truncate()方法,截断,留下前面的。
f.truncate(20)#中文有点问题,像是删除英文字符单位

近日,上市药 :最后那个字,3个字符的,被截成2个没有办法显示了

#r+格式打开文本

1)直接开始写

?
1
2
3
4
filename='suibian'
f=open(filename,'r+',encoding='utf8')
#print(f.readline())
f.write('lalalalal')

近日,上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的*“神药”,请放过中国老人》的文章称,

lalalalal上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的*“神药”,请放过中国老人》的文章称,
::会有文本被覆盖。

2)读了后再写,在最后追加内容

Python文件操作基本流程代码实例

?
1
2
3
4
5
6
7
8
#w+格式打开
还是先清空文件
#a+格式打开
光标在最后。
用最多的是r+格式打开
#同时管理多个文件对象
with  open(filename,'r',encoding='utf8')as  f_read,open(filename,'w',encoding='utf8') as  f_write:
  pass

Python文件操作基本流程代码实例

#01初级代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#__author: _nbloser
#date: 2017/12/10
# shaoguan = {'仁化', '始兴', '乐昌', '南雄'}
# jiangmeng = {'开平', '蓬江', '台山', '鹤山', '恩平'}
# guangdong_province = {'韶关':shaoguan, '江门':jiangmeng}
# nanchang = {'东湖', '西湖', '新建', '安义', '进贤'}
# jingdezhen = {'昌江', '珠山', '乐平', '浮梁'}
# jiangxi_province = {'南昌': nanchang, '景德镇': jingdezhen}
# provinces = {'广东': guangdong_province, '江西': jiangxi_province} #事先写入文件
f = open('province.txt', 'r', encoding='utf8')
data = eval(f.read())
f.close()
current_layer = data
parent_layer = []
# exit_flag = False
while True:
  for i in current_layer:
    print(i)
  choice = input(">>")
  if choice in current_layer:
    parent_layer.append(current_layer)
    current_layer = current_layer[choice]
  elif choice == 'b':
    current_layer = parent_layer.pop()
  elif choice == 'q': break
  elif choice == 'i':
    insert = input("输入你要添加的内容:")
    current_layer.setdefault(insert, { })
    with open('province.txt', 'w', encoding='utf8') as f_write:
      f_write.write(str(data))
      f_write.flush()
  else:
    print("查无此项")

总结

以上就是本文关于Python文件操作基本流程代码实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

原文链接:http://www.cnblogs.com/-nbloser/p/8019505.html