作业,3.19名称空间作用域
input=333
def func():
input=444
func()
print(input)

def func():
print(x)
x=111
func()

x=1
def func():
print(x)
def foo():
x=222
func()
foo()

input=111
def f1():
def f2():
# input=333
print(input)
input=222
f2()
f1()

x=111
def func():
print(x) #
x=222
func()

x=111
def foo():
print(x,)
def bar():
print(x)
foo()
bar()

x=1
def func2():
func1()
x=2
def func1():
print(x)
x=3
func2()

# 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'{user},你的余额为{dic[user]}'
username = input('your name:')
res1 = query(username)
print(res1)

浙公网安备 33010602011771号