假设我有一个名为choice它的变量等于2.我如何访问变量的名称?相当于的东西
In [53]: namestr(choice)
Out[53]: 'choice'
Run Code Online (Sandbox Code Playgroud)
用于制作字典.有一个很好的方法来做到这一点,我只是错过了它.
编辑:
因此,这样做的原因.我正在运行一些数据分析的东西,我在程序中调用了多个参数,我想在运行时调整或不调整.我读了我在上一次运行中使用的参数,从.config文件格式化为
filename
no_sig_resonance.dat
mass_peak
700
choice
1,2,3
Run Code Online (Sandbox Code Playgroud)
当提示输入值时,将显示先前使用的值,空字符串输入将使用先前使用的值.
我的问题是因为在写字典时已经扫描了这些值.如果需要一个参数,我运行get_param访问文件并找到参数.
我想我会通过阅读来避免这个问题.config提交一次并从中生成字典.我原本避免了这个......我不再记得的原因.更新我的代码的完美情况!
我有枚举并使用变量,如myEnum.SomeNameA,myEnum.SomeNameB等.当我从函数返回其中一个变量时,我可以打印它们的名称(例如myEnum.SomeNameA)而不是它们返回的值吗?
我正在寻找一种快速打印变量名称和值的方法,同时在unix命令行/ ssh会话上快速开发/调试一个小的python脚本.
这似乎是一个非常普遍的要求,在打印或记录其值的每一行上复制variable_names似乎是浪费(在击键和时间/能量上).即而不是
print 'my_variable_name:', my_variable_name
Run Code Online (Sandbox Code Playgroud)
我希望能够为str,int,list,dict执行以下操作
log(my_variable_name)
log(i)
log(my_string)
log(my_list)
Run Code Online (Sandbox Code Playgroud)
并获得以下输出
my_variable_name:some string
i:10
my_string:a string of words
my_list:[1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
理想情况下,输出也会记录函数名称
我已经看到一些尝试使用本地,全局,框架等的解决方案,但我还没有看到一些适用于整数,字符串,列表和函数内部的东西.
谢谢
我想做以下事情:
print "CC =",CC
Run Code Online (Sandbox Code Playgroud)
但作为一个函数,我只需要写一次变量CC.我无法弄清楚如何在函数中执行此操作,因为它总是将CC计算为浮点数(它是)....有没有办法接受函数的输入作为字符串和浮点数?
我试过这个:
def printme(a):
b='%s' % a
print b
return b
Run Code Online (Sandbox Code Playgroud)
但当然它只打印了a它的名称,而不是它的名字.
在C++中开发时,我使用这个非常有用的宏:
#define DD(a) std::cout << #a " = [ " << a << " ]" << std::endl;std::cout.flush();
Run Code Online (Sandbox Code Playgroud)
你能帮我在python中实现同样的想法吗?我不知道如何#a使用python函数实现...
我设计了一个代码来计算字符串中出现的'CG'的百分比; GC_content(DNA).
现在我可以使用此代码,以便打印具有最高GC内容的字符串的值;
print (max((GC_content(DNA1)),(GC_content(DNA2)),(GC_content(DNA3)))).
Run Code Online (Sandbox Code Playgroud)
现在我将如何打印此最大GC_content的变量名称?