#-*-coding: utf-8-*- from sys import argv ''' 此处引用了新的内置函数,exists函数是检查括号内字符串所代表的文件名的文件是否存在, 存在返回True,不存在返回False。 os.path os.path模块主要用于文件的属性获取,在编程中经常用到 ''' from os.path import exists script, from_file, to_file = argv print (f"Copying from {from_file} to {to_file}") # we could do these two on one line too, how? in_file = open(from_file) indata = in_file.read() #len(),则是用于传递字符串的长度。 print(f"The input file is {len(indata)} bytes long") #此处使用exists验证新文件是否已经存在。 print(f"Does the output file exist?{exists(to_file)}") print("Ready,hit RETURN to continue, CTRL-C to abort.") input() #此处的raw_input()我还是不是特别理解,只知道大概是询问下一步是否继续。稍后做个简化测试。 #将open函数得到的结果(是一个文件,而不是文件的内容)赋值给in_file。 out_file = open(to_file, 'w') #使用read函数读取文件内容,并将文件内容赋值给indata。 out_file.write(indata) print ("Alright, all done.") #最后保存关闭。 out_file.close() in_file.close()
下面是运行结果
PS C:\Users\HH\lpthw> python ex7.py ex6_testa.txt ex6_test.txt Copying from ex6_testa.txt to ex6_test.txt The input file is 0 bytes long Does the output file exist?True Ready,hit RETURN to continue, CTRL-C to abort. Alright, all done. PS C:\Users\HH\lpthw>