[求助]函数中打印变量名
#!/usr/local/bin/pythonline1=
line2=
line3=['b','c']
def linenum(line):
if len(line) >= 2:
if line == '':
print '%s is empty' % line
else:
print '%s = %s' % (line,line)
else:
print '%s is none' % str(line)
linenum(line1)
linenum(line2)
linenum(line3)root@10:~/py # python num.py
is none
is empty
['b', 'c'] = c我希望输出的结果是:
line1 in none
line2 is empty
line3 = c 本帖最后由 liujinz 于 2015-05-04 09:20 编辑
你这里的都被认为是格式串的一部分,不会被认为是列表的下标的。 一部分line1 is none
line2 is empty
line3 = c
line4 = c
line1 =
line2 =
line3 = ['b','c']
line4 = ['b','c']
def linenum(line):
for k, v in globals().iteritems():
if id(v) == id(line):
name = k
break
if len(line) >= 2:
if line == '':
print '%s is empty' % name
else:
print '%s = %s' % (name,line)
else:
print '%s is none' % name
linenum(line1)
linenum(line2)
linenum(line3)
linenum(line4)
页:
[1]