溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python全局變量和局部變量有什么區(qū)別

發(fā)布時間:2020-04-23 11:15:34 來源:億速云 閱讀:676 作者:小新 欄目:編程語言

今天小編給大家分享的是python全局變量和局部變量有什么區(qū)別,相信很多人都不太了解,為了讓大家更加了解python全局變量和局部變量,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會有所收獲的哦。

python全局變量和局部變量有什么區(qū)別

python全局變量和局部變量的區(qū)別

全局變量和局部變量的區(qū)別在于作用域,全局變量在整個py文件中聲明,全局范圍內(nèi)可以使用;局部變量是在某個函數(shù)內(nèi)部聲明的,只能在函數(shù)內(nèi)部使用,如果超出使用范圍(函數(shù)外部),則會報錯。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

A = 100 # 全局變量一般用大寫字母表示

def func():
    a = 50 # 局部變量一般用小寫字母表示
    print(a+A)

func()
print(A)
print(a) # 報錯信息NameError: name 'a' is not defined

python全局變量和局部變量有什么區(qū)別

#!/usr/bin/python3
# -*- coding: utf-8 -*-

A = 100

def func():
    A=250
    print(A)

print(A)    # 打印全部變量
func()      # 局部變量

python全局變量和局部變量有什么區(qū)別

如果想在函數(shù)內(nèi)部改變?nèi)肿兞浚枰谇懊婕由蟝lobal關(guān)鍵字,在執(zhí)行函數(shù)之后,全局變量值也會改變。

#!/usr/bin/python3
# -*- coding: utf-8 -*-
A = 100

def func():
    global  A
    A = 200
    print(A)


print(A)    # 打印全局變量
func()      # 局部變量
print(A)   # 改變后的全局變量

如果全局變量是列表類型,可以通過list的列表方法去對列表進(jìn)行修改,并且可以不用global來聲明。

list_1 = [1,2,56,"list"]

def changeList():
    list_1.append("over")
    print(list_1)

changeList()
print(list_1)

python全局變量和局部變量有什么區(qū)別

在函數(shù)內(nèi)部,如果局部變量與全局變量變量名一樣,則優(yōu)先調(diào)用局部變量。

關(guān)于python全局變量和局部變量有什么區(qū)別就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過小編可以保證其準(zhǔn)確性是絕對沒問題的。希望以上內(nèi)容可以對大家有一定的參考價值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI