作業,3 19命名空間作用域

2022-08-17 22:57:18 字數 2266 閱讀 7501

# 1、如下全域性變數記錄了當前登入使用者,編寫登入功能,一旦使用者登入成功,則將全域性變數賦值為當前登入的使用者名稱

# login_user=none

login_user=none

def users(file,user_into,pas):

with open(file, mode='rt', encoding='utf-8') as f1:

for line in f1:

user, word = line.strip().split(':')

if user_into == user and pas == word:

print('登入成功!')

global login_user

login_user=user_into

else:

print('登入失敗')

users('dbs.txt','tank','123')

print(login_user)

# 2、針對之前編寫的查詢餘額的功能,新增額外的邏輯:如果使用者沒有登入,則先執行登入功能

def query(user):

dic = {}

with open('query','r',encoding='utf-8') as f:

for line in f:

name,money = line.strip().split(':')

dic[name] = money

# 使用者是否已經登陸

if not log_dic.get(user):

print('請先登入')

login(user)

return f',你的餘額為'

username = input('your name:')

res1 = query(username)

print(res1)

命名空間作用域

作用域 命名空間所能夠作用的範圍 內建命名空間 程式在任何階段任何位置均可以使用 全域性有效 全域性命名空間 程式在任何階段任何位置均可以使用 全域性有效 區域性命名空間 一般情況下只在各自的區域性命名空間有效 global 在區域性命名空間內更改全域性命名空間變數,使用關鍵字生命。在變數是不可變型...

函式物件 命名空間 作用域

定義函式的三種方式 1.空函式 可以快速構建專案框架,使專案架構清晰明了 def func pass 2.無參函式 def func print from func 3.有參函式 def func x,y,args,kwargs pass 命名關鍵字引數 在函式定義階段 寫在 與 可變長引數之間的形...

函式的巢狀及命名空間 作用域

六.函式的巢狀 1.在函式內又呼叫了其他函式 def max2 x,y 兩個值比較 if x y return x else return yres max2 1,3 print res def max3 x,y,z 三個值比較 res1 max2 x,y res2 max2 res1,z retu...