【发布时间】:2009-07-05 23:23:50
【问题描述】:
我在使用 Python(2.6.2) 时遇到了一个奇怪的问题 我得出的结论是 Vista 端口中的一个错误(我无法在 XP 或 Linux 中复制它)。
我有一个用户列表、加密密码和他们的主机,我存储在一个更大的列表中(它充当一种数据库)。
这一切都很好,很花哨,除了单个用户的数据存储方式和组的存储方式不一致。
由“create_user”方法创建
['localhost', 'demo', 'demouserpasswordhash']
由“create_database”方法创建
['\xff\xfel\x00o\x00c\x00a\x00l\x00h\x00o\x00s\x00t\x00', '\x00d\x00e\x00m\x00o\x00', '\x00d\x00e\x00m\ x00o\x00u\x00s\x00e\x00r\x00p\x00a\x00s\x00s\x00w\x00o\x00r\x00d\x00h\x00a\x00s\x00h\x00\r\x00\n']
我不明白它为什么这样做,因为它的代码很简单:
# ----- base functions
def create_user ( user_data ):
return user_data.split(":")
def show_user ( user_data ):
print "Host: ", user_data[0]
print "Username: ", user_data[1]
print "Password: ", user_data[2]
print
def create_database ( user_list ):
database = []
for user in user_list:
database.append( create_user( user ) )
return database
def show_database( database ):
for row in database:
show_user( row )
# ----- test area
users = open( "users.txt" )
test_user = create_user( "localhost:demo:demouserpasswordhash" )
db = create_database( users )
print db[0]
print test_user
# -----
有人有类似的经历吗,还是只有我一个人?
【问题讨论】:
标签: python