溫馨提示×

溫馨提示×

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

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

函數(shù)內(nèi)部用關鍵字來定義全局變量的是什么

發(fā)布時間:2020-07-24 10:34:34 來源:億速云 閱讀:729 作者:Leah 欄目:互聯(lián)網(wǎng)科技

這篇文章將為大家詳細講解有關函數(shù)內(nèi)部用關鍵字來定義全局變量的是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

在函數(shù)內(nèi)部可以通過global關鍵字來定義全局變量。global表示全局變量,用于改變函數(shù)外部的變量;全局變量既可以是某對象函數(shù)創(chuàng)建,也可以是在本程序任何地方創(chuàng)建;全局變量是可以被本程序所有對象或函數(shù)引用的。

在函數(shù)內(nèi)部可以通過global關鍵字來定義全局變量。

global 是表示全局變量,當函數(shù)中要改變函數(shù)外面的變量時候需要用全局變量global來表示

全局變量既可以是某對象函數(shù)創(chuàng)建,也可以是在本程序任何地方創(chuàng)建。全局變量是可以被本程序所有對象或函數(shù)引用。

global使用

對于list類型: 改變第一個和最后一個字母

newName = "xiaoming"lst4 = list(newName)def change1():
    lst4 = ['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']
change1()
print(lst4)def change2():
    global lst4
    lst4 = ['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']
change2()
print(lst4)

結果分別為:

['x', 'i', 'a', 'o', 'm', 'i', 'h', 'g']
['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']

對于string類型:

name3 = "xiaoming"def change3():
    name3 = "giaominx"change3()
print(name3)def change4():
    global name3
    name3 = "giaominx"change4()
print(name3)

結果:

xiaoming
giaominx

對于int型:

i = 3def increase():
    global i
    i = 4increase()
print(i)

結果:4

總結:
1、當想要改變函數(shù)外部的變量的時候需要在函數(shù)中申明函數(shù)為全局變量 global

2、change1 和 change3中的lst4 、 name3其實不是函數(shù)外面定義的變量,是函數(shù)中重新定義的一個新的函數(shù)

global 和 this 的區(qū)別
1、 在Python中global指的是全局變量,只有指定后才表示同一變量(特殊情況:當變量為引用數(shù)據(jù)類型,在改變其值的時候也可以表示同一變量,如swap1),當要改變外部變量時候使用

2、 在java中this指的是成員變量,不需要指定就已經(jīng)表示為同一變量,當函數(shù)內(nèi)變量和成員變量重名的時候為了區(qū)分使用

3、相比較而言,java的靈活性更高,但是容易在函數(shù)中篡改數(shù)據(jù)值,因此定義成員變量需要謹慎 Python不用擔心命名相同的情況,但是改全局變量更為復雜

關于函數(shù)內(nèi)部用關鍵字來定義全局變量的是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI