Python文件读取问题:同目录TXT文件无法被代码识别
问题分析与修正方案
代码里的核心问题
- 文件指针耗尽:你先调用
fhand.read()把整个文件内容读进了uzunluk,这会把文件内部的指针直接移到末尾,后面的for line in fhand根本读不到任何内容。 - 拼写错误:
line.starswith('A')是笔误,正确写法是line.startswith('A'),少了字母t会直接触发属性错误。 - input函数用法错误:
input()只接受单个字符串参数,你传多个参数的写法完全无效,得用字符串格式化把变量嵌进去。 - 文件查找问题:输入文件名时必须带后缀(比如
test.txt,不能只输test);如果还是找不到,可以先打印当前工作目录确认文件位置:
import os print(os.getcwd())
修正后的代码
import os # 可选:打印当前工作目录,确认文件是否在这个路径下 print(f"当前工作目录: {os.getcwd()}") ffile = input('ENTER THE FILE\'S NAME...: ') try: # 用with语句自动管理文件,避免资源泄漏 with open(ffile, 'r') as fhand: # 先把所有行读进列表,既可以统计字符数,又能正常遍历 lines = fhand.readlines() # 统计总字符数(包含空格) uzunluk = sum(len(line) for line in lines) sayiLine = 0 for line in lines: sayiLine += 1 line = line.rstrip() # 修正startswith拼写错误 if not line.startswith('A'): continue # 用f-string格式化input的提示文本 input(f'Dosyanda : {sayiLine} kadar satır bulunuyor.') input(f'Dosyanda : {uzunluk} kadar karakter mevcut, VE BOŞLUKLAR BUNA DAHİL!!') input('Son olarak dosyanda aramış olduğun tüm satırlar şunlar:') print(line) input('Çıkmak için enter tuşuna basabilirsin') # 捕获文件找不到的异常,给出明确提示 except FileNotFoundError: print(f"错误:找不到文件 '{ffile}',请检查文件名和路径是否正确。")
内容的提问来源于stack exchange,提问作者Haluk Cem Payım
相关产品推荐
相关产品推荐

