加上注释请编写程序实现文件的复制。即将源文件复制到目的文件,两个文件名均由命令行给出,源文件名在前。
时间: 2024-05-02 20:21:41 浏览: 74
```python
import sys
if len(sys.argv) != 3: # 确认命令行参数数量正确
print("Usage: python copy_file.py <src_file> <dst_file>")
sys.exit(1)
src_file = sys.argv[1]
dst_file = sys.argv[2]
try:
with open(src_file, 'rb') as fsrc: # 以二进制读取源文件
with open(dst_file, 'wb') as fdst: # 以二进制写入目标文件
fdst.write(fsrc.read()) # 将源文件内容写入目标文件
except FileNotFoundError:
print("Error: file not found")
sys.exit(1)
except:
print("Error: unexpected error")
sys.exit(1)
print("File copied successfully")
```
注释已经写得很详细了,这里再解释一下代码的主要逻辑:
1. 确认命令行参数数量正确,如果不正确则输出使用方法并退出程序;
2. 以二进制读取源文件,以二进制写入目标文件,这里用到了 Python 的 with 语句,可以自动关闭文件;
3. 将源文件内容写入目标文件,这里用到了 read() 和 write() 方法;
4. 如果文件不存在或者发生其他异常,则输出错误信息并退出程序;
5. 如果程序运行到这里,说明文件已经复制成功,输出提示信息。
阅读全文