PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Python
[問題] 製作當前整數型態的變數名稱list
作者:
LessonWang
(橘白Cat)
2017-06-24 10:50:32
python新手發問
如題 要如何返回當前已存在且為特定型態的變數名稱list
有沒有任何比較簡單的函數或方法可以做到
而且包含非global的變數(函數內定義等)
目前我想破頭 只能得到global變數的list
但是非global的 一樣無法在list內
如附圖
而且 最糟糕的還是用到eval函數
希望前輩們能提供不要用到eval函數
而且能達到目的的方法
感激不盡
http://i.imgur.com/Kco2ijV.jpg
作者:
bazoo
(surfers'paradise)
2017-06-24 11:38:00
[x for x in dir() if isinstance(globals()[x], int)]這樣應該可行
作者:
Sunal
(SSSSSSSSSSSSSSSSSSSSSSS)
2017-06-24 13:08:00
你這樣做的目的是?scope不一樣是要怎麼存取func內的變數 除非你加global
作者:
freeunixer
(御劍客)
2017-06-24 15:06:00
新手就不要在那想洞想縫,老實一點把東西學好...
作者:
zerof
(貓橘毛發呆雕像)
2017-06-24 16:59:00
大家都看得懂在講什麼好厲害...
作者:
freeunixer
(御劍客)
2017-06-24 17:19:00
你式子跑完就被 gc 回收掉了,還有什麼區域變數可回傳?好奇心發作前,先把 variable scope 學好再講別的好嗎?你要是真的崇拜,也去學 C 替 python 寫模組,用 C 寫個可以傳出區域變數的函式就得了.加個 static 就能做到了,幹嘛來折騰物件導向的 Python
作者:
darkgerm
(黑駿)
2017-06-24 20:28:00
要看到 local 變數可用 locals()但你的例子中,只要不是在func裡面,是不可能看到tot的
作者:
LessonWang
(橘白Cat)
2017-06-24 22:21:00
所以不要以scope的觀念下去看 這題無解囉 沒有辦法把原本的code弄成string去用re分析?
作者:
darkgerm
(黑駿)
2017-06-25 14:08:00
Python 語法不是正規能夠分析的你可能要順便學一下 formal languages XD
作者:
uranusjr
(â†é€™äººæ˜¯è¶…級笨蛋)
2017-06-25 14:19:00
真想分析可以用 ast, 不過這叫殺雞用牛刀...
繼續閱讀
Re: [問題] 迭代物件中的所有非私有方法和欄位?
uranusjr
Re: [問題] try....execption應用時機
shiyeh
[問題] 迭代物件中的所有非私有方法和欄位?
LessonWang
[問題] 有關blat.exe問題
eraypeng
[問題] pandas 迴圈運算
allenlenten
[問題] 什麼樣的code才稱得上pythonic
LessonWang
Re: [問題] try....execption應用時機
physheepy
[問題] try....execption應用時機
yimean
[問題] ANCOVA要怎麼做
uglykidjoe
[問題] Spyder3啟動consol錯誤
yimean
Links
booklink
Contact Us: admin [ a t ] ucptt.com