为什么我在 globals() 中找不到我的变量?
Why can't I find my variable in globals()?
我创建了一个函数来为随机 DNA 创建一个变量。但是当我想查看 rdna
是否在 globals()
中时,我得到 False
结果
from random import choice
def randomseq():
global rdna
rdna=""
largo = int(input("Sequence Length: "))
for count in range(largo):
rdna+=choice("CGTA")
return rdna
rdna in globals()
False
为什么我无法获取True
?
rdna in globals()
将在 globals()
中搜索存储在变量 rdna
中的值。如果你真的想搜索 "rdna"
你应该把它变成一个字符串文字:
"rdna" in globals()
举个例子:
x = 1
my_var = 'x'
print(my_var in globals())
这会打印 True
,但不是因为 my_var
是全局变量,而是因为 x
是。 globals()
returns 一个包含所有全局变量及其值的字典,my_var in globals()
在这种情况下与询问 'x' in globals()
.
相同
你想要这个:
'rdna' in globals()
我创建了一个函数来为随机 DNA 创建一个变量。但是当我想查看 rdna
是否在 globals()
中时,我得到 False
结果
from random import choice
def randomseq():
global rdna
rdna=""
largo = int(input("Sequence Length: "))
for count in range(largo):
rdna+=choice("CGTA")
return rdna
rdna in globals()
False
为什么我无法获取True
?
rdna in globals()
将在 globals()
中搜索存储在变量 rdna
中的值。如果你真的想搜索 "rdna"
你应该把它变成一个字符串文字:
"rdna" in globals()
举个例子:
x = 1
my_var = 'x'
print(my_var in globals())
这会打印 True
,但不是因为 my_var
是全局变量,而是因为 x
是。 globals()
returns 一个包含所有全局变量及其值的字典,my_var in globals()
在这种情况下与询问 'x' in globals()
.
你想要这个:
'rdna' in globals()