Python 如何打印变量表示而不是变量?
有没有办法打印出一个变量来代替变量? 让我举例说明一下这个想法:Python 如何打印变量表示而不是变量?,python,python-2.7,Python,Python 2.7,有没有办法打印出一个变量来代替变量? 让我举例说明一下这个想法: E=[4,19,0,17,8] G=[4,13,8,18,17] F=[4,18,0,8,19] D=[4,13,0,19,8] lag = [E, G, F, D] lcode = [4,19,0,17,8] for i in lag: if i == lcode: print "This is", i 我想打印出来:“这是E”。。。而不是:“这是[4,19,0,17,8]”使用字典的想法。您可以执行
E=[4,19,0,17,8]
G=[4,13,8,18,17]
F=[4,18,0,8,19]
D=[4,13,0,19,8]
lag = [E, G, F, D]
lcode = [4,19,0,17,8]
for i in lag:
if i == lcode:
print "This is", i
我想打印出来:“这是E”。。。而不是:“这是[4,19,0,17,8]”使用字典的想法。您可以执行以下操作:
mydict = {"E":[4,19,0,17,8],"G":[4,13,8,18,17],"F":[4,18,0,8,19],"D":[4,13,0,19,8]}
for key,value in mydict.iteritems():
if value == lcode:
print "This is %s" %(i)
iteritems()将字典元素分解为键值对,例如key:value::“e”:[4,19,0,17,8]
如果要搜索哪些列表包含给定的元素
:
for key,value in mydict:
if element in value:
print "Element in %s " %(key)
因此,如果元素为4,程序将打印:
Element in E
Element in G
Element in F
Element in D
使用字典的概念。您可以执行以下操作:
mydict = {"E":[4,19,0,17,8],"G":[4,13,8,18,17],"F":[4,18,0,8,19],"D":[4,13,0,19,8]}
for key,value in mydict.iteritems():
if value == lcode:
print "This is %s" %(i)
iteritems()将字典元素分解为键值对,例如key:value::“e”:[4,19,0,17,8]
如果要搜索哪些列表包含给定的元素
:
for key,value in mydict:
if element in value:
print "Element in %s " %(key)
因此,如果元素为4,程序将打印:
Element in E
Element in G
Element in F
Element in D
这就是使用
dict
items = {"E": [1, 2, 3, 4, 5], "G": [1, 12, 13, 15] }
search = 4
for key, values in items.iteritems():
if search in values:
print key
输出:E这是如何使用
dict
items = {"E": [1, 2, 3, 4, 5], "G": [1, 12, 13, 15] }
search = 4
for key, values in items.iteritems():
if search in values:
print key
输出:E无需创建Dict,您可以尝试以下操作
import sys
E=[4,19,0,17,8]
G=[4,13,8,18,17]
F=[4,18,0,8,19]
D=[4,13,0,19,8]
lcode = [4,19,0,17,8]
modname = globals()['__name__']
modobj = sys.modules[modname]
lag = ["E","G","F","D"]
for name in lag:
if lcode == getattr(modobj, name):
print name
输出:E无需创建Dict,您可以尝试以下操作
import sys
E=[4,19,0,17,8]
G=[4,13,8,18,17]
F=[4,18,0,8,19]
D=[4,13,0,19,8]
lcode = [4,19,0,17,8]
modname = globals()['__name__']
modobj = sys.modules[modname]
lag = ["E","G","F","D"]
for name in lag:
if lcode == getattr(modobj, name):
print name
输出:E使用
dict
存储数字列表,而不是不同的变量。通常,对象不知道您将它们绑定到了什么名称。在任何情况下,如果lag
是[[4,8,15],G,F,D]
?它会为第一个未命名的列表打印什么?我今天一直在发布这个链接。。。我怀疑滞后值是否是字符串对的?['E'…所以使用dict
来存储数字列表,而不是不同的变量。通常,对象不知道您将它们绑定到了什么名称。在任何情况下,如果lag
是[[4,8,15],G,F,D]
?它会为第一个未命名列表打印什么?我今天一直在发布此链接…我怀疑滞后值是否为字符串正确?['E'…所以我认为这将失败,类似“未知对象/符号E”或类似错误。是的,我刚刚意识到。谢谢你指出!我认为这将失败,类似的错误“未知对象/符号E”或类似错误。是的,你是对的,我刚刚意识到。谢谢你指出!