You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python读取文本文件键值对并验证用户名密码

验证用户名密码的实现方案

你的需求是从login.txt文件中读取用户凭证,验证传入的用户名和密码是否匹配,以下是具体实现步骤和代码:

核心思路

  • 逐行读取文件中的每一条用户数据(每行是一个类似字典的字符串)
  • 使用ast.literal_eval()将字符串安全解析为Python字典(避免使用eval(),防止恶意代码执行)
  • 遍历所有用户数据,对比传入的用户名和密码,返回验证结果

代码实现

import ast

def validate_credentials(username, password):
    # 打开文件并逐行处理
    with open('login.txt', 'r') as file:
        for line in file:
            # 去除换行符并解析为字典
            user_info = ast.literal_eval(line.strip())
            # 匹配用户名和密码
            if user_info['Username'] == username and user_info['Password'] == password:
                return True
    # 无匹配项则返回False
    return False

# 测试示例
print(validate_credentials('john', '123'))  # 输出: True
print(validate_credentials('hazem', '123')) # 输出: False

注意事项

  • ast.literal_eval()是安全的解析方式,仅支持Python字面量类型(字典、列表、字符串等),不会执行任意代码,比直接用eval()更稳妥
  • 确保login.txt文件和脚本在同一目录下,或者在open()中传入完整文件路径

内容的提问来源于stack exchange,提问作者Hazem Behairy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 10:20:24