導航:首頁 > 編程語言 > python獲取變數名的函數

python獲取變數名的函數

發布時間:2023-01-07 19:03:30

A. python語言變數命名規則是什麼

python語言變數命名規則是只能包含字母、數字和下劃線。

變數名可以字母或下劃線開頭,但不能以數字開頭。例如可將變數命名為message_1,但不能將其命名為1_message。變數名不能包含空格,但可使用下劃線來分隔其中的單詞。

變數名greeting_message可行,但變數名greetingmessage會引發錯誤。不要將Python關鍵字和函數名用作變數名,即不要使用Python保留用於特殊用途的單詞,如print。變數名應既簡短又具有描述性。慎用小寫字母l和大寫字母O,因可能被人錯看成數字1和0。

應用領域:

1、圖形處理:有PIL、Tkinter等圖形庫支持,能方便進行圖形處理。

2、數學處理:NumPy擴展提供大量與許多標准數學庫的介面。

3、文本處理:python提供的re模塊能支持正則表達式,還提供SGML,XML分析模塊,許多程序員利用python進行XML程序的開發。

以上內容參考:網路--變數

B. 淺談python中的變數賦值

在python中,變數賦值的語法比較簡單,語法就是 「變數名 = 對象」,由於python屬於動態語音,所以不需要像c、 java那樣在變數賦值時需要聲明變數的類型。

c 變數賦值

int x = 1;

python 變數賦值

x = 1

y = "hello world!"

a = [1, 2]

b = ('a', 'b')

c = {"foo": "bar"}

python 變數賦值中,所涉及到的變數命名是有一定規則的:

1. 變數名只能包含字母、數字和下劃線。變數名可以字母或下劃線開頭,但不能以數字開頭,例如,可將變數命名為name_1,但不能將其命名為1_name

2. 變數名不能包含空格,但可使用下劃線來分隔其中的單詞。例如,變數名name_one可行,但變數名name one會引發錯誤。

3. 不要將Python關鍵字和函數名用作變數名,即不要使用Python保留用於特殊用途的單詞,如not、pass等。

4. 變數名應既簡短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好, 雖說簡短好,但是不能依照自己的意願隨意簡寫,盡量使用大家約定俗成的簡寫,如果不是還不如寫全拼。

5. python 變數名中大小寫敏感,所以 NAME, Name, name 代表三個不同的表裡名, 這里提一下就是慎用小寫字母l和大寫字母O,因給他們可能被人錯看成數字1和0;

再說變數賦值中賦予給變數的值,python中萬事皆對象,所以python中只要是對象就能給變數賦值。如:

    x = 1 # x賦值為數字1;

    x = sum # x賦值為內建求和函數sum;

python的賦值真實上說應該不是賦值,而更像是「引用」,如何理解「引用」呢,python中一直對象的生成是會在內存中分配給一個內存地址,這個內存地址可以使用id()方法去獲取,然後在變數賦值時,將變數直接引用該對象的內存地址,進而完成變數賦值,如:

    x = 1, 賦值時x直接引用1所在內存的地址, y = x, 此時是y直接引用x的所指向的內存地址

python中有判斷變數的方法如 is() 和 ==,二者在判斷變數時是有區別的,is函數是判斷變數的內存地址是否相同,而 == 是判斷變數的值是否相同,舉例說明:

    a = 1; b = 1.0

    a is b  # False

    a == b # True

小心python變數賦值的陷阱

    看到上面的所述知道了python變數賦值實則是引用,引用的是對象的內存地址。所賦的值可以分兩類,一類是可變的,如列表,字典,集合;一類是不可變的,如字元串、元組。所以當對象為可變類型時就會出現一種情景,我們舉例說明:

    x = [1, 2, 3]

    y = x

    print x == y    # True

    print x is y    # True

    print x     # [1, 2, 3]

    print y     # [1, 2, 3]

    y.append(4)

    print x    # [1, 2, 3, 4]

    print y    # [1, 2, 3, 4]

可以看到y在進行調整時(添加了一個元素),x也跟著變動了,這進一步說明了,python中的變數賦值時引用,x,y 賦值時指向了同一處內存地址,所以當y變動時,x同樣也發送了變化,解決這中現象的方法可以是x, y = [1,2,3], [1,2,3]這樣賦值,雖說此時 x==y 是True,但是確實是2個不同的內存地址,所以 x is y 則是 False。或者可以使用模塊,實質是相同的,創建2個不同的內存地址,使其分離。

C. Python函數及變數的定義和使用

def <函數名>():                                                

       <函數體>                                             

       return  <返回值>                            

 def <函數名>(非可選參數,可選參數):

        <函數體> 

         return <返回值>

def <函數名>(參數,*b):

        <函數體>

        return <返回值>

<函數名> = lambda <參數> : <表達式>

例1:f = lambda x , y  :  x + y                        

調用:f(6 + 8)     輸出:14                             

例2: f = lambda : "沒有參數的lambda函數!"

調用: print(f())    輸出: 沒有參數的lambda函數!

D. 如何用python動態生成變數名字

你好,方法如下:
要寫一個程序,讓linuxany1=1,linuxany2=2,… inuxany100=100,你會怎麼做?
最容易想到的自然是eval,但是實際上根本不需要這種危險的東西,因為Python的變數名就是一個字典的key而已。要獲取這個字典,直接用locals和globals函數即可。
>>> names = locals()

>>> for i in xrange(1, 101):

... names['linuxany%s' % i] = i

... >>> linuxany1
1 >>> linuxany2
2 >>> linuxany100
100
不過你也許會說這個例子沒什麼用,畢竟用數組來實現更為實用。
舉一個例子:伺服器使用一種對象資料庫,可以直接保存對象到資料庫中。伺服器列出目前支持的所有類,而用戶想添加一個不存在於列表中的類,於是向伺服器發送一段JSON或XML文本。伺服器解析這段文本,將它轉換成一個class對象,並且設置類名。之後用戶就可以隨意生成這個類的對象。
關鍵是這個資料庫和類名相關,你不能用一個通用的Object類來保存所有的對象,否則查詢時就亂套了。
除了動態設置變數名,動態刪除也是可以的,例如
del locals()['linuxany1']
同樣,delattr也是可用的。
希望能幫到你。

E. Python的函數都有哪些

Python 函數

函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。

函數能提高應用的模塊性,和代碼的重復利用率。你已經知道Python提供了許多內建函數,比如print()。但你也可以自己創建函數,這被叫做用戶自定義函數。

定義一個函數

你可以定義一個由自己想要功能的函數,以下是簡單的規則:

F. 怎麼得到python里對自己引用的變數的名字

第一個問題答不上來,估計不行,不過如果a中加了類似鉤子的東西或許可以,如果是在同一個model中,倒是可以用list或dict來統一保存。
第二個問題,直接close就行了。。。

G. Python函數和模塊的定義與使用,包括變數的類型及匿名函數用法

函數是組織好,可重復使用的,用來實現相關功能的代碼段

函數提高了代碼的重復利用率和應用的模塊性。

除Python自帶的函數之外,也可以自己創建函數,叫做自定義函數

語法:

函數代碼塊以 def 開頭

參數為 輸入值 ,放於函數名後口號裡面,

函數內容以冒號:開始,函數體縮進, return 返回 輸出值

函數調用使用關鍵字參數來確定傳入的參數值,此時,如果多個函數則不需要按照指定順序。

在定義函數時,指定參數默認值。調用時如果不傳入參數,則使用默認值

不定長部分如果沒有指定參數,傳入是一個空元組

加了 兩個星號 ** 的參數會以字典的形式導入

/ 用來指明函數形參必須使用指定位置參數,不能使用關鍵字參數的形式。

3.8版本之後的才能使用

不使用 def 定義函數,沒有函數名

lamdba主體時一個表達式,而不是代碼塊,函數體比def簡單很多

定義在函數內部的為局部變數,僅能在函數內部使用

定義在函數外部的為全局變數,可在全局使用

模塊是將包含所有定義的函數和變數的文件,一般將同類功能的函數組和在一起稱為模塊。

模塊需要導入後,在調用相應函數進行使用

模塊導入的方法:

從模塊中導入一個指定的部分

把一個模塊的所有內容全都導入

H. python 變數的命名

createPlot.ax1 是表示: ax1 是函數 createPlot 的一個屬性,這個可以在函數裡面定義也可以在函數定義後加入也可以
example:
def fun():
fun.x =1
當你在python的命令窗口下,運行一次fun()後,x 就是 fun()的一個屬性,你在命令窗口下輸入
fun.x 後面會顯示 1

也可以 在 函數定義完後加入 屬性 如 fun.y = 2,在使用 dir(fun),你就會發現fun有 x,y 這兩個屬性

I. python 定義變化的變數名稱

利用命名空間動態賦值。在 Python 的命名空間中,將變數名與值存儲在字典中,可以通過 locals(),globals() 函數分別獲取局部命名空間和全局命名空間。
實例:
names = locals()
for i in range(5):
names['n' + str(i) ] = i
print(n0, n1, n2, n3, n4)
輸出結果:
0 1 2 3 4

J. python中如何通過變數獲取變數的名字字元串

1. 使用連接符: +

world = "World"print "Hello " + world + " ! "

2. 使用佔位符來內插

world = "World"print "Hello %s !" % world

3. 使用函數

li = ['my','name','is','bob']mystr = ' '.join(li)print mystr

上面的語句中字元串是作為參數傳入的,可以直接用變數替換:

begin_date = '2012-04-06 00:00:00'end_date = '2012-04-06 23:59:59'select * from usb where time between to_date(begin_date,'YYYY-MM-DD HH24:MI:SS') and to_date(end_date,'YYYY-MM-DD HH24:MI:SS')

閱讀全文

與python獲取變數名的函數相關的資料

熱點內容
win7美化命令行終端 瀏覽:795
免加密狗圖片 瀏覽:485
一隻透明的鳥是什麼app 瀏覽:817
空氣壓縮機油批發商 瀏覽:69
linuxifexist 瀏覽:4
加密tf卡拷入文件 瀏覽:399
山西php工資 瀏覽:673
福州看病預約用什麼小程序app 瀏覽:238
php保留兩位小數不四捨五入 瀏覽:292
黑馬程序員路徑大全 瀏覽:1000
saas平台PHP 瀏覽:333
雲伺服器科學計算配置怎麼選 瀏覽:649
jar解壓命令 瀏覽:609
php正則問號 瀏覽:299
無線已加密不可上網是怎麼了 瀏覽:464
什麼app可以免費做手機 瀏覽:376
異性下載什麼app 瀏覽:680
51單片機程序單步視頻 瀏覽:241
家庭寬頻如何連接伺服器 瀏覽:121
汽車高壓泵解壓 瀏覽:772