老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

python如何實(shí)現(xiàn)可變變量名-創(chuàng)新互聯(lián)

python如何實(shí)現(xiàn)可變變量名?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)從2013年成立,先為南川等服務(wù)建站,南川等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為南川企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

如果要寫(xiě)一個(gè)程序,讓x1為1,x2為2,然后直到x100為100,你會(huì)怎么做?

在C這種靜態(tài)語(yǔ)言里,變量名這個(gè)標(biāo)識(shí)符實(shí)際上會(huì)被編譯器直接翻譯成內(nèi)存地址,所以除了手動(dòng)設(shè)置每個(gè)變量的值以外,沒(méi)辦法做到這點(diǎn)。而Python這種動(dòng)態(tài)語(yǔ)言則是可以做到的。

最容易想到的自然是eval,但是實(shí)際上根本不需要這種危險(xiǎn)的東西,因?yàn)镻ython的變量名就是一個(gè)字典的key而已。要獲取這個(gè)字典,直接用locals和globals函數(shù)即可。

因此這個(gè)程序可以這樣實(shí)現(xiàn):

代碼如下:

>>> names = locals()
>>> for i in xrange(1, 101):
...   names['x%s' % i] = i
...
>>> x1
1
>>> x2
2
>>> x100
100

不過(guò)你也許會(huì)說(shuō)這個(gè)例子沒(méi)什么用,畢竟用數(shù)組來(lái)實(shí)現(xiàn)更為實(shí)用。

那么再考慮一個(gè)例子:服務(wù)器使用一種對(duì)象數(shù)據(jù)庫(kù),可以直接保存對(duì)象到數(shù)據(jù)庫(kù)中。服務(wù)器列出目前支持的所有類(lèi),而用戶(hù)想添加一個(gè)不存在于列表中的類(lèi),于是向服務(wù)器發(fā)送一段JSON或XML文本。服務(wù)器解析這段文本,將它轉(zhuǎn)換成一個(gè)class對(duì)象,并且設(shè)置類(lèi)名。之后用戶(hù)就可以隨意生成這個(gè)類(lèi)的對(duì)象。
關(guān)鍵是這個(gè)數(shù)據(jù)庫(kù)和類(lèi)名相關(guān),你不能用一個(gè)通用的Object類(lèi)來(lái)保存所有的對(duì)象,否則查詢(xún)時(shí)就亂套了。
而恰巧的是,還就有人在GAE論壇上提出了這個(gè)需求,而只會(huì)Java的他最終只能放棄。

當(dāng)然,你想用來(lái)惡搞也行:

代碼如下:

>>> locals()['True'] = False
>>> True
False

另一個(gè)用處就是測(cè)試一個(gè)變量名是否已經(jīng)存在。標(biāo)準(zhǔn)的做法是try...except一個(gè)NameError異常,實(shí)際上直接用in locals()或in globals()就能判斷了。
順便再介紹另一種奇怪的方法,不知道有人這樣寫(xiě)過(guò)沒(méi):

代碼如下:

>>> import __main__
>>> hasattr(__main__, 'x')
False
>>> setattr(__main__, 'x', 1)
>>> x
1
>>> hasattr(__main__, 'x')
True

當(dāng)然,沒(méi)有任何人推薦你這樣寫(xiě),我也不會(huì)。

最后,除了動(dòng)態(tài)設(shè)置變量名,動(dòng)態(tài)刪除也是可以的,例如del locals()['x1']。同樣,delattr也是可用的。

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。


本文標(biāo)題:python如何實(shí)現(xiàn)可變變量名-創(chuàng)新互聯(lián)
文章分享:http://www.xueling.net.cn/article/cdjihd.html

其他資訊

在線咨詢(xún)
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 亚洲AV无码一区二区乱子仑 | 欧美丰满熟妇xxxx性ppx人 | 成人黄网站片免费视频 | 九九热视频免费 | 激情久久久久久久 | 交视频在线播放 | 无码免费中文字幕视频 | 日韩黄色免费看 | 国产精品久久久久久久不卡 | 亚洲黄色网络 | 精品久久香蕉国产线看观看亚洲 | 国产又粗又猛又爽又黄的视频软件 | 成人免费看吃奶视频网站 | 国产精品久久久久久人妻精品 | 大西瓜av | 久操精品在线 | 国产精品三级久久久久三级 | 久久99精品久久久久久野外 | 亚洲精品国产一区二区三区四区在线 | 男人操女人视频免费观看 | 爱爱网站免费 | 在线观看亚洲AV日韩A∨ | 511yc影院免费理论片 | 国产成人在线免费看 | 国产精品视频入口麻豆 | 国产熟妇的荡欲午夜视频 | 日韩免费观看 | 国产三区在线观看视频 | 日日操夜夜添 | 四虎成人精品国产永久免费 | 久久久亚洲精品视频 | 40岁成熟女人牲交片 | 国产97免费视频 | 久久这里只有精品99 | 久久免费国产 | 一级片aaaa | 亚洲成人首页 | 亚洲国产精品无码一区二区 | 毛片av在线 | 精品一区国产日韩视频在线 | 国内精品久久久久 |