python字符串转变量名_python 如何把在字符串里面的名字变成变量,进行复制
參考這幾篇帖子:
https://stackoverflow.com/questions/11553721/using-a-string-variable-as-a-variable-name?answertab=active#tab-top
https://stackoverflow.com/questions/1373164/how-do-i-create-a-variable-number-of-variables
https://stackoverflow.com/questions/19122345/to-convert-string-to-variable-name
https://late.am/post/2012/04/30/the-exec-statement-and-a-python-mystery.html
和自己嘗試,得出了以下幾個方法時可用的。我主要是用了exec的方法,因為只是一個小腳本,而不是在類里面設置,我想在類里面,可以使用setattr的方法進行。
由于python 2 和 3的exec是不同的,所以實現的方法也略有差別。
python 3 :
exec 被當成一個函數 ,可以通過以下的方法來進行將字符串變成變量的名字進行賦值
x='buffalo'
exec("%s = %d" % (x,2))
>>> foo = "bar"
>>> exec(foo + "= 'something else'")>>> printbar
somethingelse
在python 2 當中,exec 是一個語句, 只能使用下面的方法:
x='buffalo'
exec "%s = %d" % (x,2)
下面是我在mininet下面,用語句自動生成 主機,并且連接到某一個 交換機 上的示例:
host_pre = 's1h'ip_pre= '10.0.0.'ip_suff= '/24'
for i in range(1,254):
host_name= host_pre +str(i)
ip_addr= ip_pre + str(i) +ip_suffexec "%s = self.addHost('%s' ,ip='%s')"%(host_name, \
host_name, ip_addr)exec "self.addLink(s1, %s)" % host_name
總結
以上是生活随笔為你收集整理的python字符串转变量名_python 如何把在字符串里面的名字变成变量,进行复制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 饮食是什么?
- 下一篇: websocket python爬虫_p