编写一个程序,从命令行上接收两个文件名,比较两个文件的长度及内容。
时间: 2024-05-16 13:16:08 浏览: 93
以下是一个Python程序,可以从命令行接收两个文件名,比较两个文件的长度及内容:
```python
import sys
def compare_files(file1, file2):
with open(file1, 'rb') as f1, open(file2, 'rb') as f2:
f1_content = f1.read()
f2_content = f2.read()
if len(f1_content) != len(f2_content):
return False
for i in range(len(f1_content)):
if f1_content[i] != f2_content[i]:
return False
return True
if __name__ == '__main__':
if len(sys.argv) != 3:
print('Usage: python compare_files.py <file1> <file2>')
sys.exit(1)
file1 = sys.argv[1]
file2 = sys.argv[2]
if compare_files(file1, file2):
print('The files are identical.')
else:
print('The files are different.')
```
这个程序使用了Python的内置函数`open()`来打开文件。`read()`方法可以读取整个文件的内容,并将其作为字节串返回。然后,我们可以比较两个文件的长度以及内容,以确定它们是否相同。当文件内容完全相同时,程序输出“The files are identical.”,否则输出“The files are different.”。
要运行这个程序,请在命令行上输入以下命令(假设程序的文件名为`compare_files.py`):
```bash
python compare_files.py file1.txt file2.txt
```
其中,`file1.txt`和`file2.txt`是需要比较的两个文件名。
阅读全文