婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 淺談對Python變量的一些認識理解

淺談對Python變量的一些認識理解

熱門標簽:沈陽外呼系統呼叫系統 外呼系統哪些好辦 沈陽防封電銷卡品牌 武漢外呼系統平臺 富錦商家地圖標注 沈陽人工外呼系統價格 如何申請400電話費用 池州外呼調研線路 江西省地圖標注

一、Python變量

在大多數語言中,為一個值起一個名字時,把這種行為稱為“給變量賦值”或“把值存儲在變量中”。不過,Python與許多其它計算機語言的有所不同,它并不是把值存儲在變量中,而像是把名字“貼”在值的上邊(專業一點說法是將名字綁定了對象)。所以,有些Python程序員會說Python沒有變量,只有名字,通過名字找到它代表的值。

 Python中的變量,與其它開發語言(如C語言)的不同:

在C語言中,變量類似于一個“容器”,賦給它的值,裝在容器中:

定義一個變量 int a = 1;

給變量a重新賦值 a = 2;

把變量a賦值給另外一個變量b ,int b = a;

會重新創建一個變量b(容器),將a中的內容復制粘貼至b中。

在python,變量類似于名字標簽“貼”在值上面,通過名字找到它代表的值。

定義一個變量 a = 1

給變量a重新賦值 a = 2

把變量a賦值給另外一個變量b, b = a

創建新的便利貼b,與a同時貼到值上

為了對python中變量的這種情況加深認識,下面適度展開介紹。

1.1 第一點

先說明第一點:變量的實現方式有:引用語義、值語義

python語言中變量的實現方式就是引用語義,在變量里面保存的是值(對象)的引用(值所在處內存空間的地址)。采用這種方式,變量所需的存儲空間大小一致,因為其中只需要保存一個引用。而有些語言(例如c)采用的不是這種方式,它們把變量直接保存在變量的存儲區里,這種方式就稱為值語義。這樣的話,一個整數類型的變量就需要保存一個整數所需要的空間(例如c語言中int類型占用4個字節大小)。

python中變量與對象的引用關系類似于c語言的指針變量與指向地址之間的關系。

在python的數據結構中,對象分為可變對象和不可變對象。基本數據類型如int、float,元祖tuple、str是不可變對象;list(列表)、dict(字典)、set(集合)是可變對象,可變對象存儲的元素的引用其實是沒有改變的,改變的是其引用指向的值。

采用引用語義存儲的只是一個變量的值所在的內存地址,而不是這個變量的值本身。

1.2 第二點

現在說明第二點:Python中的變量、對象、引用三者之間的關系。

在Python里一切皆對象。Python中,對象具有三要素:標識(identity)、類型(type)、值(value)。

☆標識(identity):

用于唯一標識對象,通常對應對象在計算機內存中的地址。使用內置函數id(obj)返回對象唯一標識。

☆類型(type):

類型可以限制對象的取值范圍和可執行的操作。使用內置函數type(obj)返回對象所屬類型。

對象中含有標準的頭部信息:類型標識符。標識對象類型,表示對象存儲的數據的類型。

每一個對象都有兩個標準的頭部信息:

1.類型標識符,去標識對象的(數據)類型;

2.引用計數器,記錄當前對象的引用的數目。

(回收機制:變量的引用計數器為0,自動清理。 ※ 較小整數型對象有緩存機制。)

☆值(value):

表示對象存儲的數據的信息。使用內置函數print(obj)可以直接打印值。

Python中,變量用來指向任意的對象,是對象的引用。Python變量更像是指針(或者說Python變量更像“貼簽”),而不是數據存儲區域(而不是數據“容器”)。

Python 中的變量不是裝有對象的“容器”,而是貼在對象上的“標簽”——給一個變量賦值,把這個標簽貼到一個對象上,重新賦值,是撕下標簽貼到另一個對象上。

在python中,變量保存的是對象(值)的引用,采用這種方式,變量的每一次初始化,都開辟了一個新的空間,將新內容的地址賦值給變量。id()函數可以獲取變量在內存中的地址。我們把不同的值賦給變量時候,地址發生變化,相同的值地址不發生變化。下面給出示例:

【順便提示:id()的值不是固定不變的——此值系統為對象分配的內存地址,在你練習時顯示的不同值是正常的。】

下面是字符串的示例:

在Python中,值可以放在內存的某個位置(地址),變量用于引用它們,給變量賦一個新值,原值不會被新值覆蓋,變量只是引用了新值。順便說明,Python的垃圾回收機制會自動清理不再被用到的值,所以不用擔心計算機內存中充滿被“丟棄”的無效的值。

1.3 第三點

現在說明第三點:可變(mutable) 類型對象、不可變(immutable) 類型對象

可變類型對象,指對象可以在其 id() 保持固定的情況下改變其取值。

不可變類型對象,指具有固定值的對象。不可變對象包括數字(numbers)、字符串(strings)和元組(tuples)。這樣的對象不能被改變。如果必須存儲一個不同的值,則必須創建新的對象。不可變對象不允許對自身內容進行修改。如果我們對一個不可變對象進行賦值,實際上是生成一個新對象,再讓變量指向這個對象。哪怕這個對象簡單到只是數字 0 和 1。

由于 Python 中的變量存放的是對象引用,所以對于不可變對象而言,盡管對象本身不可變,但變量的對象引用是可變的。運用這樣的機制,有時候會讓人產生糊涂,似乎可變對象變化了。如下面的代碼:

i = 73 

i += 2

不可變的對象的特征沒有變,依然是不可變對象,變的只是創建了新對象,改變了變量的對象引用。參見下圖:

對于可變對象,其對象的內容是可以變化的。當對象的內容發生變化時,變量的對象引用是不會變化的。如下面的例子。

m=[5,9] 

m+=[6]

參見下圖:

二、總結

Python變量指的是名字綁定了對象(綁定就是將一個對象與一個名字聯系起來)。

綁定時,變量就是名字。

使用時,變量代表對象的引用。

變量改變的只有綁定關系。

深入學習:

https://docs.python.org/zh-cn/3.9/reference/datamodel.html#objects-values-and-types

補充說明:

對復雜的數據類型(列表、集合、字典),如果添加某一項元素,或者添加幾個元素,不會改變其本身的地址,只會改變其內部元素的地址引用,但是如果對其重新賦值時,就會重新賦予地址覆蓋就地址,這時地址就會發生改變。示例代碼如下:

list_ = [1,2,3,4]
print(list_, id(list_))
list_.append(5)
print(list_, id(list_))
#如上代碼,因為append前后的list_仍然是同一個對象,只是對象的值發了改變,所以地址不變。
 
#再如下面的代碼
print(list_, id(list_), id(list_[1]))#打印列表、列表的地址、第二個元素的地址
list_[1] = 'aaa'   #修改列表
print(list_, id(list_), id(list_[1]))#打印列表、列表的地址、第二個元素的地址
#不難發發現:列表變了、列表的地址沒有變、列表內部元素變了、列表內部元素的地址變了

測試運行如下圖所示:

到此這篇關于淺談對Python變量的一些認識理解的文章就介紹到這了,更多相關Python變量內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python3 刪除所有自定義變量的操作
  • Python全局變量global關鍵字詳解
  • python變量作用域與列表入門詳解
  • python子類如何繼承父類的實例變量
  • 總結Python變量的相關知識

標簽:阿里 常德 黑龍江 潛江 通遼 株洲 呂梁 銅川

巨人網絡通訊聲明:本文標題《淺談對Python變量的一些認識理解》,本文關鍵詞  淺談,對,Python,變量,的,一些,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《淺談對Python變量的一些認識理解》相關的同類信息!
  • 本頁收集關于淺談對Python變量的一些認識理解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久不见久久见中文字幕免费| 日本电影欧美片| 五月激情丁香一区二区三区| 一区二区三区在线观看视频| 欧美国产1区2区| 国产欧美日韩不卡免费| 久久精品夜色噜噜亚洲a∨| 久久夜色精品国产欧美乱极品| 日韩欧美在线1卡| 久久在线免费观看| 亚洲人被黑人高潮完整版| 一区二区三区成人| 日韩精品久久理论片| 久久精品二区亚洲w码| 国产福利91精品| 色综合一区二区三区| 欧美午夜片在线看| 欧美精品一区二区久久婷婷| 欧美国产日韩a欧美在线观看| 成人欧美一区二区三区白人| 一区二区三区在线视频免费| 蜜臀va亚洲va欧美va天堂| 国产激情视频一区二区三区欧美| 成人免费视频网站在线观看| 在线欧美一区二区| 精品国产一区二区三区不卡| 中文字幕永久在线不卡| 性做久久久久久免费观看欧美| 国产一区视频网站| 一本到不卡精品视频在线观看| 欧美色欧美亚洲另类二区| 欧美成人video| 伊人夜夜躁av伊人久久| 久久狠狠亚洲综合| 在线观看日韩电影| 国产日韩三级在线| 日本欧美在线观看| 91丨九色丨黑人外教| 日韩一级免费观看| 亚洲精选在线视频| 成人午夜精品在线| 日韩三级伦理片妻子的秘密按摩| 中文字幕一区二区三区色视频| 日本大胆欧美人术艺术动态| 国产不卡高清在线观看视频| 88在线观看91蜜桃国自产| 亚洲三级免费观看| 国产成人av资源| 91精品在线一区二区| 樱桃国产成人精品视频| 懂色一区二区三区免费观看| 欧美一区二区视频在线观看2022| 亚洲男人的天堂一区二区| 国产伦精品一区二区三区视频青涩| 91色在线porny| 国产欧美一区二区精品婷婷| 青青青伊人色综合久久| 欧美这里有精品| 亚洲精品高清在线观看| av中文字幕亚洲| 国产欧美日韩视频在线观看| 免费在线成人网| 欧美另类z0zxhd电影| 亚洲午夜久久久久中文字幕久| 色综合久久久久综合体桃花网| 欧美国产禁国产网站cc| 国产99精品国产| 日本一区二区三区视频视频| 国产精品一级片在线观看| 久久综合色之久久综合| 久久国产夜色精品鲁鲁99| 欧美成人三级在线| 激情深爱一区二区| 久久久久久久久久久久久久久99 | 2023国产精华国产精品| 日本中文在线一区| 日韩一区二区三区视频在线观看| 午夜精品久久久久久久久久| 欧美一三区三区四区免费在线看| 亚洲国产成人91porn| 欧美午夜一区二区| 日韩精品免费专区| 精品裸体舞一区二区三区| 国产一区三区三区| 国产精品视频你懂的| 91亚洲精品乱码久久久久久蜜桃| 伊人婷婷欧美激情| 欧美一区二区三区免费在线看| 免费在线观看日韩欧美| 久久久高清一区二区三区| jvid福利写真一区二区三区| 悠悠色在线精品| 欧美一级生活片| 国产精品一区二区三区网站| 国产精品久久久久久久久动漫| 一本一道久久a久久精品综合蜜臀| 亚洲国产精品久久久久婷婷884| 日韩一级高清毛片| 国产曰批免费观看久久久| 日韩美女视频一区二区| 制服丝袜日韩国产| aa级大片欧美| 日本最新不卡在线| 国产精品久久精品日日| 欧美在线观看一二区| 国内精品在线播放| 亚洲欧美激情在线| 精品国产乱子伦一区| 99在线精品视频| 久久99精品网久久| 亚洲一区二区中文在线| 国产女主播在线一区二区| 欧美三级电影网| 99精品视频在线观看免费| 日本欧美加勒比视频| 亚洲视频精选在线| 日韩视频国产视频| 色婷婷av一区二区三区gif| 韩国精品主播一区二区在线观看| 洋洋av久久久久久久一区| 久久综合九色欧美综合狠狠 | 中文字幕乱码日本亚洲一区二区| 95精品视频在线| 国产精品一区专区| 久久99热狠狠色一区二区| 亚洲精品视频自拍| 国产精品久久久久久亚洲伦| 91精品婷婷国产综合久久性色 | 久久精品夜色噜噜亚洲aⅴ| 在线播放亚洲一区| 欧美系列日韩一区| 在线视频一区二区三区| 99精品视频一区| 成人h精品动漫一区二区三区| 精品在线免费观看| 毛片av一区二区| 日韩电影在线免费看| 亚洲sss视频在线视频| 一区二区三区高清| 亚洲一区二区在线观看视频 | 91视频一区二区| 高清视频一区二区| 国产一区二区福利| 国产成人精品综合在线观看| 九九九精品视频| 国产中文字幕一区| 国产成人综合在线播放| 精品一区二区三区不卡 | 亚洲成人激情自拍| 亚洲成人av中文| 亚洲一二三四区| 午夜影院在线观看欧美| 亚洲国产三级在线| 日日夜夜精品视频天天综合网| 亚洲高清在线精品| 蜜桃视频在线观看一区| 国产呦精品一区二区三区网站| 极品少妇xxxx精品少妇偷拍| 韩国v欧美v日本v亚洲v| 国产成人av电影在线播放| 成人美女在线视频| 色综合久久99| 在线综合+亚洲+欧美中文字幕| 欧美一区二区三区在线观看视频| 欧美一区二区国产| 国产清纯白嫩初高生在线观看91| 日本一区二区三区高清不卡 | 日本强好片久久久久久aaa| 久久99深爱久久99精品| 成人黄页在线观看| 欧美美女黄视频| 久久久av毛片精品| 亚洲精品成人a在线观看| 亚洲一区二区三区视频在线播放| 日本在线观看不卡视频| 国产成人综合亚洲网站| 91麻豆精东视频| 欧美大肚乱孕交hd孕妇| 国产精品国产三级国产三级人妇 | 欧美不卡视频一区| 国产精品盗摄一区二区三区| 亚洲福利国产精品| 国产高清视频一区| 欧美日韩免费一区二区三区| 精品国产一区二区三区久久久蜜月| 国产精品久久久久影院色老大 | 久久久久高清精品| 一级日本不卡的影视| 韩国成人在线视频| 欧美色欧美亚洲另类二区| 2023国产精华国产精品| 亚洲成人精品影院| 不卡高清视频专区| 精品粉嫩超白一线天av| 一区二区三区在线免费观看| 国产一区二区不卡| 欧美一级欧美三级| 一区二区三区欧美久久| 成人久久18免费网站麻豆| 日韩欧美一区二区免费|