亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python變量教程之全局變量和局部變量

 更新時間:2022年08月17日 11:28:16   作者:海擁  
這篇文章主要介紹了Python變量教程之全局變量和局部變量,文章圍繞主題展開詳細的晌午內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下

前言

全局變量是那些沒有在任何函數(shù)內(nèi)部定義并具有全局范圍的變量,而局部變量是那些在函數(shù)內(nèi)部定義的變量,其范圍僅限于該函數(shù)。換句話說,我們可以說局部變量只能在初始化它的函數(shù)內(nèi)部訪問,而全局變量在整個程序和每個函數(shù)內(nèi)部都可以訪問。局部變量是那些在函數(shù)內(nèi)部初始化并且僅屬于該特定函數(shù)的變量。它不能在函數(shù)之外的任何地方訪問。讓我們看看如何創(chuàng)建一個局部變量。

示例: 創(chuàng)建局部變量

def f():

	# local variable
	s = "I love python"
	print(s)


# 驅(qū)動程序代碼
f()

輸出:

I love python

如果我們嘗試在函數(shù)外部使用這個局部變量,那么讓我們看看會發(fā)生什么。

例子:

def f():
	
	# local variable
	s = "I love python"
	print("Inside Function:", s)

# 驅(qū)動程序代碼
f()
print(s)

輸出:

NameError: name 's' is not defined

全局變量

這些是在任何函數(shù)之外定義的并且可以在整個程序中訪問的那些,即在每個函數(shù)的內(nèi)部和外部。讓我們看看如何創(chuàng)建一個全局變量。

示例: 定義和訪問全局變量

# This function uses global variable s
def f():
	print("Inside Function", s)

# Global scope
s = "I love python"
f()
print("Outside Function", s)

輸出:

Inside Function I love python
Outside Function I love python

變量 s 被定義為全局變量,既可以在函數(shù)內(nèi)部使用,也可以在函數(shù)外部使用。

注意: 由于沒有局部變量,因此將使用全局變量的值,但請確保局部變量和全局變量應(yīng)具有相同的名稱。

現(xiàn)在,如果有一個同名的變量在函數(shù)內(nèi)部以及全局初始化怎么辦?,F(xiàn)在問題來了,局部變量是否會對全局變量產(chǎn)生一些影響,反之亦然,如果我們在函數(shù) f() 中更改變量的值會發(fā)生什么?它也會影響全局變量嗎?我們在下面的代碼中對其進行測試:

# 該函數(shù)有一個名稱與 s 相同的變量。
def f():
	s = "Me too."
	print(s)


# 全局范圍
s = "I love python"
f()
print(s)

輸出:

Me too.
I love python

如果在函數(shù)范圍內(nèi)也定義了具有相同名稱的變量,那么它將僅打印函數(shù)內(nèi)部給出的值,而不是全局值。 

問題是,如果我們嘗試更改函數(shù)內(nèi)部的全局變量的值會怎樣。讓我們用下面的例子來看看。

例子:

# 該函數(shù)使用全局變量 s
def f():
	s += 'GFG'
	print("Inside Function", s)


# Global scope
s = "I love python"
f()

輸出:

UnboundLocalError: local variable 's' referenced before assignment

為了使上述程序正常工作,我們需要使用“global”關(guān)鍵字。讓我們看看這個全局關(guān)鍵字是什么。

全局關(guān)鍵字

如果我們想要進行賦值或更改全局變量,我們只需要在函數(shù)中使用global 關(guān)鍵字。 打印和訪問不需要全局。由于在 f() 中對 s 的賦值,Python“假設(shè)”我們需要一個局部變量,因此第一條語句會拋出錯誤消息。如果沒有將其聲明為全局變量,則在函數(shù)內(nèi)部更改或創(chuàng)建的任何變量都是局部變量。要告訴 Python,我們要使用全局變量,我們必須使用關(guān)鍵字 “global” ,如以下示例所示: 

示例 1: 使用全局關(guān)鍵字

# 此函數(shù)修改全局變量's'
def f():
	global s
	s += ' HY'
	print(s)
	s = "Look for Haiyong Python Section"
	print(s)

# 全局范圍
s = "Python is great!"
f()
print(s)

輸出:

Python is great! HY
Look for Haiyong Python Section
Look for Haiyong Python Section

現(xiàn)在沒有歧義了。 

示例 2: 使用全局變量和局部變量

a = 1

# 使用全局,因為沒有局部“a”
def f():
	print('Inside f() : ', a)

# 變量“a”被重新定義為局部變量
def g():
	a = 2
	print('Inside g() : ', a)

# 使用 global 關(guān)鍵字修改全局 'a'
def h():
	global a
	a = 3
	print('Inside h() : ', a)


# 全局范圍
print('global : ', a)
f()
print('global : ', a)
g()
print('global : ', a)
h()
print('global : ', a)

輸出:

global :  1
Inside f() :  1
global :  1
Inside g() :  2
global :  1
Inside h() :  3
global :  3

到此這篇關(guān)于Python變量教程之全局變量和局部變量的文章就介紹到這了,更多相關(guān)Python全局與局部變量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python學(xué)習(xí)之Django的管理界面代碼示例

    Python學(xué)習(xí)之Django的管理界面代碼示例

    這篇文章主要介紹了Python學(xué)習(xí)之Django的管理界面代碼示例,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • Python圖像處理之圖像與視頻處理基礎(chǔ)教程

    Python圖像處理之圖像與視頻處理基礎(chǔ)教程

    這篇文章主要介紹了Python圖像處理之圖像與視頻處理基礎(chǔ)教程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • Keras 多次加載model出錯的解決方案

    Keras 多次加載model出錯的解決方案

    這篇文章主要介紹了Keras 多次加載model出錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python實現(xiàn)微信機器人的方法

    Python實現(xiàn)微信機器人的方法

    這篇文章主要介紹了Python實現(xiàn)微信機器人的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Pandas保存csv數(shù)據(jù)的三種方式詳解

    Pandas保存csv數(shù)據(jù)的三種方式詳解

    CSV文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本),是一種通用的、相對簡單的文件格式,被用戶、商業(yè)和科學(xué)廣泛應(yīng)用。本文介紹了三種Pandas保存CSV文件數(shù)據(jù)的方法,需要的可以參考一下
    2022-03-03
  • python中Matplotlib繪制直線的實例代碼

    python中Matplotlib繪制直線的實例代碼

    在本篇文章里小編給大家整理的是一篇關(guān)于python中Matplotlib繪制直線的實例代碼內(nèi)容,有興趣的朋友們可以跟著學(xué)習(xí)下。
    2021-07-07
  • Python3常用內(nèi)置方法代碼實例

    Python3常用內(nèi)置方法代碼實例

    這篇文章主要介紹了Python3常用內(nèi)置方法代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python 實現(xiàn)try重新執(zhí)行

    Python 實現(xiàn)try重新執(zhí)行

    今天小編就為大家分享一篇Python 實現(xiàn)try重新執(zhí)行,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python tabulate結(jié)合loguru打印出美觀方便的日志記錄

    Python tabulate結(jié)合loguru打印出美觀方便的日志記錄

    在開發(fā)過程中經(jīng)常碰到在本地環(huán)境無法完成聯(lián)調(diào)測試的情況,必須到統(tǒng)一的聯(lián)機環(huán)境對接其他系統(tǒng)測試。往往是出現(xiàn)了BUG難以查找數(shù)據(jù)記錄及時定位到錯誤出現(xiàn)的位置。本文將利用tabulate結(jié)合loguru實現(xiàn)打印出美觀方便的日志記錄,需要的可以參考一下
    2022-10-10
  • Python 常用string函數(shù)詳解

    Python 常用string函數(shù)詳解

    下面小編就為大家?guī)硪黄狿ython 常用string函數(shù)詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05

最新評論