第4课:集合函数模块

Posted 茄子子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第4课:集合函数模块相关的知识,希望对你有一定的参考价值。

  1. 文件读写:b模式
    import requests
    url = ‘http://www.nnzhp.cn/wp-content/uploads/2018/01/601a335c499837a995ae10867fc36101.png‘
    img = requests.get(url).content
    
    f = open(‘hhh.jpg‘, ‘wb‘)  # bytes:以二进制模式打开,有wb、rb、ab组合
    f.write(img)
    

    拓展:

    f = open(‘a.txt‘,encoding=‘utf-8‘)
    s = ‘dingfei,123456‘
    names = [‘a‘,‘b‘,‘c‘] #
    import time
    f = open(‘haha.txt‘,‘w‘)
    f.write(‘test‘)
    # 不加下面这个这句,有时会在文件中看不到写入的数据,是因为有缓冲区,它会等缓冲区数据存储到一定的值才会写入到磁盘
    f.flush() #立即把缓冲区的内容写到磁盘里面。
    time.sleep(50)
    
    with open(‘b.txt‘) as f,open(‘c.txt‘) as fc:#自动关文件指针;一个with可以打开多个文件,逗号隔开即可。
      f.write(‘aaa‘)
    

      

  2. 修改文件的2种方式:
1)
# 粗暴直接,适用于小文件,内容少
with open(‘geci‘,‘a+‘,encoding=‘utf-8‘) as f:
    f.seek(0)
    all = f.read()
    new_all = all.replace(‘二‘,‘一‘)
    f.seek(0)
    f.truncate()
    f.write(new_all)
    f.flush()

 2)

# 替换一个文件中的内容,直接修改文件不好实现,一般把修改后的文件内容保存到bak文件,删除原来文件,rename bak文件。
# .**文件是隐藏文件
with open(‘geci.txt‘, ‘r+‘, encoding=‘utf-8‘) as f, open(‘.geci.bak‘, ‘w‘, encoding=‘utf-8‘) as ff:
    for i in f:
        newline = i.replace(‘一‘, ‘二‘)
        ff.write(newline)
os.remove(‘geci.txt‘)
os.rename(‘.geci.bak‘, ‘geic.txt‘)
2.
3. 

以上是关于第4课:集合函数模块的主要内容,如果未能解决你的问题,请参考以下文章

第43课 函数的意义

Python自动化第3课

第10课:[实战] Redis 网络通信模块源码分析

第7课 初识函数

第17课 python 模块

第43课 函数的意义