我正在编写服务器客户端模型,因此我有多个并行运行的线程,因此我尝试锁定共享资源并尝试读取数据帧。 但是我无法做到这一点。
这是我的代码,它负责读取数据框。
def get_user_data(user_name):
global User_base_info
print(User_base_info)
Error = False
Passcode = None
User_id = None
try:
print("in")
Lock.acquire()
print("lock", user_name)
Passcode = User_base_info.loc(user_name, "Passcode")
User_id = User_base_info.loc(user_name, "User_ID")
print(Passcode, User_id, "hii")
except KeyError:
Error = True
finally:
time.sleep(2)
Lock.release()
return Passcode, User_id, Error
if (__name__ == "__main__"):
load_base_user_database()
#print(User_base_info)
print(get_user_data("RedDragon47"))
这是我得到的输出
User_ID Passcode
User_name
RedDragon47 47aa4 ...........
in
lock RedDragon47
(None, None, False)
[Finished in 3.9s]
答案 0 :(得分:0)
.loc访问器与索引一起使用,而不是像这样的方法调用:
passcode = User_base_info.loc[user_name, "Passcode"]
# ^ ^
但是,鉴于您试图获取单个值而不是一系列值,您可能想像这样使用at
方法:
passcode = User_base_info.at[user_name, "Passcode"]