Python 将类中的信息保存到另一个模块中,并使它们相互影响
问题是每次我在另一个模块中运行代码时,使用的Python 将类中的信息保存到另一个模块中,并使它们相互影响,python,Python,问题是每次我在另一个模块中运行代码时,使用的用户名和名称都会重置。 当我写:print(x.random\u name)它显示为buffycarrot,再次这样做将证明同样的事情,而不是字典中下一行的minidiscscum。请修改我的代码或告诉我完成此操作所需的工具和行。函数中的变量是局部变量,这意味着它们只存在于函数中。要使它们成为全局的,请使用global关键字。 例如,在下面的代码中,my_函数打印3,而print(a)打印0 import random names = ["buff
用户名
和名称都会重置。
当我写:print(x.random\u name)
它显示为buffycarrot
,再次这样做将证明同样的事情,而不是字典中下一行的minidiscscum
。请修改我的代码或告诉我完成此操作所需的工具和行。函数中的变量是局部变量,这意味着它们只存在于函数中。要使它们成为全局的,请使用global
关键字。
例如,在下面的代码中,my_函数
打印3,而print(a)
打印0
import random
names = ["buffycarrot", "minidiscscutum", "bromidethousand", "potassiumkiva",
"tamarinenglish", "galliumreproduce","chollywhisky", "waspgermless",
"annesketch", "channelslaldy", "melbagenius", "lebanesewapiti",
"monologuepseudo", "albatrosswashington", "ferrisclutch", "moistosdale",
"granbymixin", "tuxaustrina","diffuserdraw", "pebblecricket", "smilegila",
"bornedeclair", "sixfoldexcitable", "apricotgangles", "portalensemble",
"spritsailreduce", "corruptlabcoat", "glowinggrant", "goslingwillow",
"creoleascender", "samefee", "omegatarbert", "waggerboned", "seniorglimmer",
"analyzepale", "sickoeye", "cartloadmoors", "broadlyselfie",
"interferepurely", "grostynethan", "mendeleviumweird", "supermombangin",
"gashpanicky", "periodprivate", "possetpastor", "bannerrosti", "reamerchex",
"punkfeline", "poachedkarate", "cupcakegrin"]
def random_name(name_count):
username = ""
names_used = []
for name in names:
if name not in names_used:
chosen_name = ""
chosen_name += names[name_count]
names_used += chosen_name
return chosen_name
else:
name_count += 1
输出:
a = 0
def my_function():
a = 3
print(a)
my_function()
print(a)
a = 0
def my_function():
global a
a = 3
print(a)
my_function()
print(a)
如果使用global
,则可以将变量从本地更改为全局
3
0
输出:
a = 0
def my_function():
a = 3
print(a)
my_function()
print(a)
a = 0
def my_function():
global a
a = 3
print(a)
my_function()
print(a)
将使用的变量username
和name\u从本地转换为全局,应该可以让它们存储类中的信息
3
3
你想要保持全局状态,这是你的选择。你的标题和代码似乎没有什么关系。代码不涉及类或模块,因此标题似乎完全不符合顺序。您的问题是关于如何在不替换的情况下从列表中获取随机名称,还是关于模块?