av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

詳解python變量與數(shù)據(jù)類(lèi)型

瀏覽:46日期:2022-07-13 10:19:14

這篇文章我們學(xué)習(xí) Python 變量與數(shù)據(jù)類(lèi)型

變量

變量來(lái)源于數(shù)學(xué),是計(jì)算機(jī)語(yǔ)言中能儲(chǔ)存計(jì)算結(jié)果或能表示值抽象概念,變量可以通過(guò)變量名訪問(wèn)。在 Python 中 變量命名規(guī)定,必須是大小寫(xiě)英文,數(shù)字和 下劃線(_)的組合,并且不能用數(shù)字開(kāi)頭。

變量命名規(guī)則:

變量名只能是字母,數(shù)字和下劃線的任意組合 變量名第一個(gè)字符不能是數(shù)字 變量名區(qū)分大小寫(xiě),大小寫(xiě)字母被認(rèn)為是兩個(gè)不同的字符 特殊關(guān)鍵字不能命名為變量名

聲明變量

Python 中的變量不需要聲明,每個(gè)變量在使用前都必須賦值,變量賦值以后該變量才會(huì)被創(chuàng)建。在 Python 中,變量就是變量,它沒(méi)有類(lèi)型,我們所說(shuō)的”類(lèi)型”是變量所指的內(nèi)存中對(duì)象的類(lèi)型。

name = 'neo'

上述代碼聲明了一個(gè)變量,變量名為:name, 變量 name 的值為”neo”。

變量賦值

在 Python 中,等號(hào) = 是賦值語(yǔ)句,可以把任意數(shù)據(jù)類(lèi)型賦值給變量,同一個(gè)變量可以反復(fù)賦值,而且可以是不同類(lèi)型的變量。

a = 123 # a 是整數(shù)a = ’abc’ # a 是字符串

這種變量本身類(lèi)型不固定的語(yǔ)言稱(chēng)之為動(dòng)態(tài)語(yǔ)言,與之對(duì)應(yīng)的就是靜態(tài)語(yǔ)言。靜態(tài)語(yǔ)言在定義變量時(shí)必須指定變量類(lèi)型,如果賦值的時(shí)候類(lèi)型不匹配,就會(huì)報(bào)錯(cuò)。例如 Java 是靜態(tài)語(yǔ)言,這樣賦值就會(huì)報(bào)錯(cuò):

多個(gè)變量賦值

Python 允許你同時(shí)為多個(gè)變量賦值。例如:

a = b = c = 1

以上實(shí)例,創(chuàng)建一個(gè)整型對(duì)象,值為 1,從后向前賦值,三個(gè)變量被賦予相同的數(shù)值。

您也可以為多個(gè)對(duì)象指定多個(gè)變量。例如:

a, b, c = 1, 2, 'neo'

以上實(shí)例,兩個(gè)整型對(duì)象 1 和 2 的分配給變量 a 和 b,字符串對(duì)象 “neo” 分配給變量 c。

常量

所謂常量就是不能變的變量,比如常用的數(shù)學(xué)常數(shù) π 就是一個(gè)常量。在 Python 中,通常用全部大寫(xiě)的變量名表示常量:

BI = 3.14

但事實(shí)上 BI 仍然是個(gè)變量,Python 根本無(wú)法保證 BI 不會(huì)被改變,所以,用全部大寫(xiě)的變量名表示常量只是一個(gè)習(xí)慣上的用法,如果你一定要改,語(yǔ)法也不會(huì)報(bào)錯(cuò)。

數(shù)據(jù)類(lèi)型

Python3 中有六個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型:Number(數(shù)字)、String(字符串)、List(列表)、Tuple(元組)、Sets(集合)、Dictionary(字典)。

Python3 的六個(gè)標(biāo)準(zhǔn)數(shù)據(jù)類(lèi)型中:

不可變數(shù)據(jù)(3 個(gè)):Number(數(shù)字)、String(字符串)、Tuple(元組); 可變數(shù)據(jù)(3 個(gè)):List(列表)、Dictionary(字典)、Set(集合)。

下面我們一一介紹這些數(shù)據(jù)類(lèi)型的使用。

Number(數(shù)字)

Python3 支持 int、float、bool、complex(復(fù)數(shù))。

數(shù)字類(lèi)型是顧名思義是用來(lái)存儲(chǔ)數(shù)值的,需要記住的是,有點(diǎn)和 Java 的字符串味道差不多,如果改變了數(shù)字?jǐn)?shù)據(jù)類(lèi)型的值,將重新分配內(nèi)存空間。

Python 支持三種不同的數(shù)值類(lèi)型:

整型(Int) - 通常被稱(chēng)為是整型或整數(shù),是正或負(fù)整數(shù),不帶小數(shù)點(diǎn)。Python3 整型是沒(méi)有限制大小的,可以當(dāng)作 Long 類(lèi)型使用,所以 Python3 沒(méi)有 Python2 的 Long 類(lèi)型。 浮點(diǎn)型(float) - 浮點(diǎn)型由整數(shù)部分與小數(shù)部分組成,浮點(diǎn)型也可以使用科學(xué)計(jì)數(shù)法表示(2.5e2 = 2.5 x 102 = 250) 復(fù)數(shù)( (complex)) - 復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成,可以用a + bj,或者complex(a,b)表示, 復(fù)數(shù)的實(shí)部a和虛部b都是浮點(diǎn)型。

示例:

#!/usr/bin/python3 counter = 100 # 整型變量miles = 1000.0 # 浮點(diǎn)型變量name = 'test' # 字符串 print (counter)print (miles)print (name)

數(shù)字類(lèi)型轉(zhuǎn)換

int(x) 將x轉(zhuǎn)換為一個(gè)整數(shù)。 float(x) 將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù)。 complex(x) 將x轉(zhuǎn)換到一個(gè)復(fù)數(shù),實(shí)數(shù)部分為 x,虛數(shù)部分為 0。 complex(x, y) 將 x 和 y 轉(zhuǎn)換到一個(gè)復(fù)數(shù),實(shí)數(shù)部分為 x,虛數(shù)部分為 y。x 和 y 是數(shù)字表達(dá)式。 額外說(shuō)明

和別的語(yǔ)言一樣,數(shù)字類(lèi)型支持各種常見(jiàn)的運(yùn)算,不過(guò) Python 的運(yùn)算比別的大多數(shù)常見(jiàn)語(yǔ)言都更加豐富,此外,還有大量豐富的方法,提供更高效的開(kāi)發(fā)。

數(shù)值運(yùn)算示例:

print (5 + 4) # 加法 輸出 9print (4.3 - 2) # 減法 輸出 2.3print (3 * 7) # 乘法 輸出 21print (2 / 4) # 除法,得到一個(gè)浮點(diǎn)數(shù) 輸出 0.5print (2 // 4) # 除法,得到一個(gè)整數(shù) 輸出 0print (17 % 3) # 取余 輸出 2print (2 ** 5) # 乘方 輸出 32

String(字符串)

創(chuàng)建字符串可以使用單引號(hào)、雙引號(hào)、三單引號(hào)和三雙引號(hào),其中三引號(hào)可以多行定義字符串,Python 不支持單字符類(lèi)型,單字符也在Python也是作為一個(gè)字符串使用。

我們定義一個(gè) s=’python’語(yǔ)句,它在計(jì)算機(jī)中的執(zhí)行順序是先在內(nèi)存中創(chuàng)建一個(gè)字符串 Python ,在程序棧寄存器中創(chuàng)建一個(gè)變量 s,最后把 Python 的地址賦給s 。

再來(lái)看看字符串的一些常見(jiàn)操作:

s = ’學(xué)習(xí)Python’# 切片s[0], s[-1], s[3:], s[::-1]# ’優(yōu)’, ’n’, ’Python’, ’nohtyP的雅優(yōu)’# 替換,還可以使用正則表達(dá)式替換s.replace(’Python’, ’Java’)# ’學(xué)習(xí)Java’# 查找,find()、index()、rfind()、rindex()s.find(’P’)# 3, 返回第一次出現(xiàn)的子串的下標(biāo)s.find(’h’, 2)# 6, 設(shè)定下標(biāo)2開(kāi)始查找s.find(’23333’)# -1, 查找不到返回-1s.index(’y’)# 4, 返回第一次出現(xiàn)的子串的下標(biāo)s.index(’P’)# 不同與find(), 查找不到會(huì)拋出異常# 轉(zhuǎn)大小寫(xiě), upper()、lower()、swapcase()、capitalize()、istitle()、isupper()、islower()s.upper()# ’學(xué)習(xí)PYTHON’s.swapcase()# ’學(xué)習(xí)pYTHON’, 大小寫(xiě)互換s.istitle()# Trues.islower()# False# 去空格,strip()、lstrip()、rstrip()# 格式化s1 = ’%s %s’ % (’Windrivder’, 21)# ’Windrivder 21’ s2 = ’{}, {}’.format(21, ’Windridver’)# 推薦使用format格式化字符串s3 = ’{0}, {1}, {0}’.format(’Windrivder’, 21)s4 = ’{name}: {age}’.format(age=21, name=’Windrivder’)# 連接與分割,使用 + 連接字符串,每次操作會(huì)重新計(jì)算、開(kāi)辟、釋放內(nèi)存,效率很低,所以推薦使用joinl = [’2017’, ’03’, ’29’, ’22:00’]s5 = ’-’.join(l)# ’2017-03-29-22:00’s6 = s5.split(’-’)# [’2017’, ’03’, ’29’, ’22:00’]

以上是一些常見(jiàn)的操作。

另外還有一點(diǎn)需要注意的是字符串編碼,所有的 Python 字符串都是 Unicode 字符串,當(dāng)需要將文件保存到外設(shè)或進(jìn)行網(wǎng)絡(luò)傳輸時(shí),就要進(jìn)行編碼轉(zhuǎn)換,將字符轉(zhuǎn)換為字節(jié),以提高效率。

# encode 將字符轉(zhuǎn)換為字節(jié)str = ’學(xué)習(xí)Python’ print (str.encode())# 默認(rèn)編碼是 UTF-8 輸出:b’xe5xadxa6xe4xb9xa0Python’print (str.encode(’gbk’)) # 輸出 b’xd1xa7xcfxb0Python’# decode 將字節(jié)轉(zhuǎn)換為字符print (str.encode().decode(’utf8’)) # 輸出 ’學(xué)習(xí)Python’print (str.encode(’gbk’).decode(’gbk’)) # 輸出 ’學(xué)習(xí)Python’

List(列表)

類(lèi)似 Java List 集合接口

列表是寫(xiě)在方括號(hào) [] 之間、用逗號(hào)分隔開(kāi)的元素列表,列表可以完成大多數(shù)集合類(lèi)的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。列表中元素的類(lèi)型可以不相同,它支持?jǐn)?shù)字,字符串甚至可以包含列表(所謂嵌套),列表中的元素是可以改變。

示例:

Weekday = [’Monday’,’Tuesday’,’Wednesday’,’Thursday’,’Friday’]print(Weekday[0]) # 輸出 Monday#list 搜索print(Weekday.index('Wednesday'))#list 增加元素Weekday.append('new')print(Weekday)# list 刪除Weekday.remove('Thursday') print(Weekday)

Tuple(元組)

元組(tuple)與列表類(lèi)似,不同之處在于元組的元素不能修改。元組寫(xiě)在小括號(hào) () 里,元素之間用逗號(hào)隔開(kāi),組中的元素類(lèi)型也可以不相同。

示例:

letters = (’a’,’b’,’c’,’d’,’e’,’f’,’g’)print(letters[0]) # 輸出 ’a’print(letters[0:3]) # 輸出一組 (’a’, ’b’, ’c’)

Sets(集合)

類(lèi)似 Java Set 集合接口

集合(set)是一個(gè)無(wú)序不重復(fù)元素的序列,使用大括號(hào) {} 或者 set() 函數(shù)創(chuàng)建集合,注意:創(chuàng)建一個(gè)空集合必須用 set() 而不是 {} ,因?yàn)?{} 是用來(lái)創(chuàng)建一個(gè)空字典。

集合不能被切片也不能被索引,除了做集合運(yùn)算之外,集合元素可以被添加還有刪除:

示例:

a_set = {1,2,3,4}# 添加a_set.add(5)print(a_set) # 輸出{1, 2, 3, 4, 5}# 刪除a_set.discard(5)print(a_set) # 輸出{1, 2, 3, 4}

Dictionary(字典)

類(lèi)似 Java Map 集合接口

字典是一種映射類(lèi)型,它的元素是鍵值對(duì),字典的關(guān)鍵字必須為不可變類(lèi)型,且不能重復(fù)。創(chuàng)建空字典使用 {} 。

示例:

Logo_code = { ’BIDU’:’Baidu’, ’SINA’:’Sina’, ’YOKU’:’Youku’ }print(Logo_code)# 輸出{’BIDU’: ’Baidu’, ’YOKU’: ’Youku’, ’SINA’: ’Sina’}print (Logo_code[’SINA’]) # 輸出鍵為 ’one’ 的值print (Logo_code.keys()) # 輸出所有鍵print (Logo_code.values()) # 輸出所有值print (len(Logo_code)) # 輸出字段長(zhǎng)度

總結(jié)

本節(jié)給大家介紹了 Python 變量 和六種標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型,給大家演示了變量的使用,以及六個(gè)六種標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型的常用操作。

示例代碼:Python-100-days-day003

以上就是詳解python變量與數(shù)據(jù)類(lèi)型的詳細(xì)內(nèi)容,更多關(guān)于python變量與數(shù)據(jù)類(lèi)型的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久99深爱久久99精品 | 99久久精品国产一区二区三区 | 天天综合网站 | 国产区一区 | 中文字幕av在线 | 不卡av在线播放 | 欧美片网站免费 | 成人国产精品久久久网站 | 成人在线小视频 | 日韩欧美国产高清91 | 亚洲一区精品视频 | 中文字幕在线看片 | 久久国产一区二区三区 | 正在播放国产精品 | 三级在线观看 | 亚洲成人免费在线观看 | 久久在线精品 | 一区二区欧美日韩 | 欧美精品一级片 | 国产综合第一页 | 国产不卡在线视频 | 欧美国产视频 | 日韩在线免费视频 | 亚洲激情片 | 欧美激情一区二区 | 国产91免费| 亚洲成人av在线播放 | 国产伦精品一区二区免费 | 综合av | 色综合久久综合 | 久久视频一区 | 91精品91久久久中77777 | 国产永久视频 | 色在线播放 | 中文字幕黄色片 | 久久久久久中文字幕 | 午夜黄色大片 | 91看片看淫黄大片 | 久久久午夜 | 日本毛片在线观看 | 欧美日韩国产二区 |