鱼C论坛

 找回密码
 立即注册
查看: 1900|回复: 6

[已解决]Python_29课课后练习

[复制链接]
发表于 2020-2-5 21:13:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
学到这里感觉课后练习的题目都独立写不出来啦,你们是怎么学习的呀,本人学电子的,非计算机专业,感觉课后练习好难呀
话不多说,上代码。
题目是编写一个程序,比较用户输入的两个文件,如果不同,显示出不同的行号与第一个不同的字符的位置。

def file_compare(file1,file2):
    f1 = open(file1)#为什么这里不要加上路径呢
    f2 = open(file2)
    count = 0 #统计行数
    differ = [] #统计不一样的数量

    for line1 in f1:
        line2 = f2.readline()
        count += 1
        if line1 != line2:
            differ.append(count)

    f1.close()
    f1.close()
    return differ

file1 = input('请输入需要比较的头一个文件名:')
file2 = input('请输入需要比较的另一个文件名:')

differ = file_compare(file1,file2)

if len(differ) == 0:
    print('两个文件完全一样')
else:
    print('两个文件共有【%d】处不同:' %len(differ))
    for each in differ:
        print('第%d行不一样'%each)

问题是在运行程序的时候是  请输入需要比较的头一个文件名:'record.txt','r'
请输入需要比较的另一个文件名:'test.txt','r'
Traceback (most recent call last):
  File "D:/python3.7工程/P29/P29_比较文件.py", line 20, in <module>
    differ = file_compare(file1,file2)
  File "D:/python3.7工程/P29/P29_比较文件.py", line 2, in file_compare
    f1 = open(file1)#为什么这里不要加上路径呢
FileNotFoundError: [Errno 2] No such file or directory: "'record.txt','r'"

这里是文件是应该放在哪里呀? 输入文件名要加引号吗
最佳答案
2020-2-5 21:47:20
确定是在D盘根目录?确定是.txt扩展名?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-2-5 21:21:15 | 显示全部楼层
放在工作环境,你的应该在python3.7工程,
不然你可以提前看看os的两个函数,查看当前工作环境和改工作环境。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-5 21:24:45 | 显示全部楼层
当然不加引号了。输入'record.txt','r'得到的是"'record.txt','r'"
路径可以在输入时加上如 c:\record.txt
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-5 21:36:53 | 显示全部楼层
F.K. 发表于 2020-2-5 21:21
放在工作环境,你的应该在python3.7工程,
不然你可以提前看看os的两个函数,查看当前工作环境和改工作环 ...

import os
os
是这样吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-5 21:38:47 | 显示全部楼层
冬雪雪冬 发表于 2020-2-5 21:24
当然不加引号了。输入'record.txt','r'得到的是"'record.txt','r'"
路径可以在输入时加上如 c:\record.txt

请输入需要比较的头一个文件名:D:\test.txt
请输入需要比较的另一个文件名:D:\record.txt

Traceback (most recent call last):
  File "D:\python3.7工程\P29\P29_比较文件.py", line 20, in <module>
    differ = file_compare(file1,file2)
  File "D:\python3.7工程\P29\P29_比较文件.py", line 2, in file_compare
    f1 = open(file1)#为什么这里不要加上路径呢
FileNotFoundError: [Errno 2] No such file or directory: 'D:\\test.txt'

文件没有找到呀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-5 21:47:20 | 显示全部楼层    本楼为最佳答案   
确定是在D盘根目录?确定是.txt扩展名?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-5 22:00:40 | 显示全部楼层
冬雪雪冬 发表于 2020-2-5 21:47
确定是在D盘根目录?确定是.txt扩展名?

拓展名多打了,谢谢你啦 问题解决了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-4 01:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表