日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python 局部变量和全局变量 - Python零基础入门教程

發(fā)布時間:2024/9/27 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 局部变量和全局变量 - Python零基础入门教程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

  • 一.前言
  • 二.Python 局部變量
  • 三.Python 全局變量
  • 四.Python 局部變量和全局變量的區(qū)別
  • 五.重點總結(jié)
  • 六.猜你喜歡

一.前言

零基礎(chǔ) Python 學習路線推薦 : Python 學習目錄 >> Python 基礎(chǔ)入門

在 Python 開發(fā)中,變量也是有生命周期的,一旦周期結(jié)束,程序會自動清理暫用的空間,釋放內(nèi)存,變量分為兩者,一種是局部變量,一種是全局變量,兩者具體有什么區(qū)別呢……

二.Python 局部變量

一般而言在函數(shù)內(nèi)部或者類中聲明的變量默認都是局部變量。一旦函數(shù)結(jié)束,變量的生命周期也會結(jié)束,占用的空間會被自動釋放。

def func1():# 在函數(shù)內(nèi)部定義的變量默認都是局部變量a = 1print(a)# 函數(shù)結(jié)束,局部變量a的生命周期結(jié)束# 由于a是局部變量,并且a的生命周期已經(jīng)結(jié)束,外部再次調(diào)用局部變量a,程序會產(chǎn)生異常,崩潰 print(a)

程序報錯:NameError: name ‘a(chǎn)’ is not defined ,原因:函數(shù)內(nèi)部定義的局部變量只能在函數(shù)內(nèi)部使用。

三.Python 全局變量

全局變量和局部變量相反,在函數(shù)外部或者類外部聲明的變量默認為全局變量。全局變量的生命周期直到程序結(jié)束才會結(jié)束,比局部變量生命周期更長。

# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:python局部變量和全局變量.py @Time:2021/3/24 00:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""a = 2 def func1():print(a)# 函數(shù)結(jié)束,局部變量的生命周期結(jié)束# 全局變量直到程序結(jié)束,生命周期才結(jié)束func1() # 輸出全局變量a print(a)''' 輸出結(jié)果: 2 2'''

四.Python 局部變量和全局變量的區(qū)別

1.全局變量的生命周期是直到程序結(jié)束,而局部變量生命周期是函數(shù)結(jié)束;

2.如果需要在函數(shù)內(nèi)部修改全局變量的值,需要在函數(shù)內(nèi)部為該全局變量前面加上 global 關(guān)鍵字, 否則該變量默認為函數(shù)內(nèi)部定義的局部變量,示例代碼如下:

# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:python局部變量和全局變量.py @Time:2021/3/24 00:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""# 在函數(shù)內(nèi)部定義的變量默認都是局部變量 a = 2 def func1():# global a # 聲明 a 是全局變量,在該函數(shù)內(nèi)部對a的操作就是對全局變量a的操作a = 1 # 如果沒有上一行代碼,默認a就是函數(shù)內(nèi)部的局部變量,函數(shù)結(jié)束,生命周期結(jié)束print(a)# 函數(shù)結(jié)束,局部變量的生命周期結(jié)束func1() # 輸出全局變量a print(a)''' 輸出結(jié)果: 1 2'''

是不上覺得很奇怪:為什么最后一個值是 2 ,應該是 1 才對?

因為沒有第 17 行代碼的話,默認 a 只是函數(shù)內(nèi)部的一個普通局部變量,所以函數(shù)內(nèi)部的 print 函數(shù)輸出到控制臺是 1 ;函數(shù)結(jié)束,函數(shù)內(nèi)部的局部變量 a 值生命周期結(jié)束,執(zhí)行 fun1 函數(shù)之后的 print 函數(shù)輸出的是全局變量 a 的值 2 .

也就是說函數(shù)內(nèi)部對 a 值得修改并沒有成功,只有在函數(shù)內(nèi)部,為全局變量加上關(guān)鍵字 global 聲明為全局變量,才能修改成功,取消第 17 行得注釋,控制臺輸出:

1 1

五.重點總結(jié)

  • 1.注意局部變量和全局變量的生命周期;
  • 2.如果想在函數(shù)內(nèi)部修改全局變量的值,需要加上關(guān)鍵字 global ;

六.猜你喜歡

  • Python 簡介
  • Python Pycharm Anacanda 區(qū)別
  • Python2.x 和 Python3.x,如何選擇?
  • Python 配置環(huán)境
  • Python Hello World 入門
  • Python 代碼注釋
  • Python 中文編碼
  • Anaconda 是什么?Anconda 下載安裝教程
  • Pycharm 提示:this license **** has been cancelled
  • Pycharm 設置開發(fā)模板/字體大小/背景顏色
  • Python 列表 list
  • Python 元組 tuple
  • Python 字典 dict
  • 未經(jīng)允許不得轉(zhuǎn)載:猿說編程 ? Python 局部變量和全局變量

    總結(jié)

    以上是生活随笔為你收集整理的Python 局部变量和全局变量 - Python零基础入门教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。