python读写复制文件
1、读取文件
# 打开文件
fo = open("D:/LPE-E/python/python/index.txt", "r")
print ("文件名为: ", fo.name)
line = fo.read()
print ("读取的内容: %s" % (line))
# 关闭文件
fo.close()
2、写入文件
# 写入文件
fo = open("D:/LPE-E/python/python/index.txt", "w")
fo.write('dsfghfdsdg')
# 关闭文件
fo.close()
3、复制文件
前面文件操作时,一直打开的文件和写入最后一定要关闭close() ,否则会程序的运行造成意想不到的隐患。但是,即便使用 close() 做好了关闭文件的操作,如果在打开文件或文件操作过程中抛出了异常,还是无法及时关闭文件。在 Python 中,对应的解决方式是使用 with as 语句操作上下文管理器(context manager),它能够帮助我们自动分配并且释放资源。
with 表达式 [as target]:
代码块
# 写入文件
with open("D:/LPE-E/python/python/index.txt", "w") as target:
target.write('sdfghj')
3、复制文件
# 复制文件
import random
import os
# 随机生成6位的验证码
def code(len=6):
# 注意: 这里我们生成的是0-9A-Za-z的列表,当然你也可以指定这个list,这里很灵活
# 比如: code_list = ['P','y','t','h','o','n','T','a','b'] # PythonTab的字母
code_list = []
for i in range(10): # 0-9数字
code_list.append(str(i))
for i in range(65, 91): # 对应从“A”到“Z”的ASCII码
code_list.append(chr(i))
for i in range(97, 123): # 对应从“a”到“z”的ASCII码
code_list.append(chr(i))
myslice = random.sample(code_list, len) # 从list中随机获取6个元素,作为一个片断返回
verification_code = ''.join(myslice) # list to string
return verification_code
# 获取当前位置的绝对路径
path = os.path.dirname(__file__)
# 读取文件
with open('D:/MrZhang/CMVC/cmvc/static/space.jpg', 'rb') as target:
cont = target.read()
path = os.path.dirname(__file__)
rest = os.path.join(path, code(4)+'.jpg')
# 写入文件
with open(rest, 'wb') as targets:
targets.write(cont)