ValueError:找不到子字符串,为什么



my_data.txt文件看起来像这样:

jim@gmail.com: hello123  
tim@gmail.com: hello1234

该程序实际上my_data.txt文件中提取电子邮件地址和密码,至少对于基本程序员来说是非常智能的。但每次我运行它时,它都会大喊ValueError: substring not found,即使是你,我也尝试了两种字符串方法:.index().find()

file = open('my_data.txt', 'r')
for line in file.readlines():
break_line = line.index(':') # OR: break_line = line.find(':')
email = line[:break_line]
password = line[(break_line + 2):len(line)]
print(line.find(':'))

我希望您的文本文件中有空行。尝试跳过空行和不包含":"一开始:

for line in file.readlines():
if not line.strip():
continue
if ":" not in line:
continue
break_line = line.index(':')  # OR: break_line = line.find(':')
email = line[:break_line]
password = line[(break_line + 2):len(line)]
print(line.find(':'))

也许你可以试试这个代码:

for line in file.readlines():
if line.strip():  # meaning there is a valid line
print(line)

break_line = line.split(':')  #index(':') # OR: break_line = line.find(':')
email = break_line[0]
print(email)

password = break_line[1]
print(password)

最新更新