Python搜索文件中的字符串并获取字符串';s线号
因此,我正在用python编写一个登录系统,我想知道我是否可以在文本文档中搜索您输入的用户名,然后让它输出找到它的行,并搜索密码文档。如果它与您输入的密码和该行上的字符串匹配,那么它将打印您登录的密码。在我之前的代码中,我让它搜索第1行,如果它没有找到字符串,它会在第1行中添加一个,然后重复,直到找到为止。然后在同一行检查密码文件Python搜索文件中的字符串并获取字符串';s线号,python,Python,因此,我正在用python编写一个登录系统,我想知道我是否可以在文本文档中搜索您输入的用户名,然后让它输出找到它的行,并搜索密码文档。如果它与您输入的密码和该行上的字符串匹配,那么它将打印您登录的密码。在我之前的代码中,我让它搜索第1行,如果它没有找到字符串,它会在第1行中添加一个,然后重复,直到找到为止。然后在同一行检查密码文件 def checkuser(user,line): # scan the username file for the username ulines = u
def checkuser(user,line): # scan the username file for the username
ulines = u.readlines(line)
if user != ulines:
line = line + 1
checkuser(user)
elif ulines == user:
password(user)
获取线路号码的功能。你可以想怎么用就怎么用
def getLineNumber(fileName, searchString):
with open(fileName) as f:
for i,line in enumerate(f, start=1):
if searchString in line:
return i
raise Exception('string not found')
获取线路号码的功能。你可以想怎么用就怎么用
def getLineNumber(fileName, searchString):
with open(fileName) as f:
for i,line in enumerate(f, start=1):
if searchString in line:
return i
raise Exception('string not found')
用蟒蛇的方式回答你的问题
f = open(filename)
line_no = [num for num,line in enumerate(f) if 'searchstring' in line][0]
print line_no+1
用蟒蛇的方式回答你的问题
f = open(filename)
line_no = [num for num,line in enumerate(f) if 'searchstring' in line][0]
print line_no+1
很抱歉,忽略了这个例子,它是从原始代码中剪下的一部分,要长得多。new告诉您它是否是新帐户。因此,如果new=1,那么它会写入用户名和password@CodyRoberts您还想先用用户名搜索文件吗?很抱歉,忽略了这个例子,它是从原始代码中剪下的一部分,要长得多。new告诉您它是否是新帐户。因此,如果new=1,那么它会写入用户名和password@CodyRoberts您还想先用用户名搜索文件吗?小建议:不要使用
返回i+1
,而是使用枚举(f,start=1)
或枚举(f,1)
,根据您的喜好,enumerate是什么?它为您提供当前正在迭代的项的索引。有点像枚举(我的列表)中的索引项的:
@James谢谢你的建议:)!小建议:不要使用返回i+1
,而是使用枚举(f,start=1)
或枚举(f,1)
,这取决于您更喜欢什么。枚举的确切内容是什么?它会为您提供当前正在迭代的项的索引。有点像枚举(我的列表)中的索引项的:
@James谢谢你的建议:)!这个答案似乎比循环更快,在语法上更紧凑。这个答案似乎比循环更快,在语法上更紧凑。