1. 變量
創(chuàng)新互聯(lián)公司是一家專業(yè)提供印臺(tái)企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、H5網(wǎng)站設(shè)計(jì)、小程序制作等業(yè)務(wù)。10年已為印臺(tái)眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。
變量存儲(chǔ)在內(nèi)存中的值
這就意味著在創(chuàng)建變量時(shí)會(huì)在內(nèi)存中開辟一個(gè)空間
基于變量的數(shù)據(jù)類型,解釋器會(huì)分配指定內(nèi)存,并決定什么數(shù)據(jù)可以被存儲(chǔ)在內(nèi)存中
因此,變量可以指定不同的數(shù)據(jù)類型,這些變量可以存儲(chǔ)整數(shù),小數(shù)或字符等
2. 賦值
Python 中的變量賦值不需要類型聲明
每個(gè)變量在內(nèi)存中創(chuàng)建,都包括變量的標(biāo)識(shí),名稱和數(shù)據(jù)這些信息
每個(gè)變量在使用前都必須賦值,變量賦值以后該變量才會(huì)被創(chuàng)建
等號(hào)(=)用來給變量賦值
等號(hào)(=)運(yùn)算符左邊是一個(gè)變量名
等號(hào)(=)運(yùn)算符右邊是存儲(chǔ)在變量中的值
counter = 100 # 賦值整型變量
Python允許同時(shí)為多個(gè)變量賦值
a = b = c = 1
a, b, c = 1, 1.0, "1"
3. 標(biāo)準(zhǔn)
在內(nèi)存中存儲(chǔ)的數(shù)據(jù)可以有多種類型
例如,一個(gè)人的年齡可以用數(shù)字來存儲(chǔ),他的名字可以用字符來存儲(chǔ)
Python 定義了一些標(biāo)準(zhǔn)類型,用于存儲(chǔ)各種類型的數(shù)據(jù)。
Python有五個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類型
Numbers(數(shù)字)
數(shù)字?jǐn)?shù)據(jù)類型用于存儲(chǔ)數(shù)值
是不可改變的數(shù)據(jù)類型
這意味著改變數(shù)字?jǐn)?shù)據(jù)類型會(huì)分配一個(gè)新的對(duì)象
當(dāng)指定一個(gè)值時(shí),Number對(duì)象就會(huì)被創(chuàng)建:
var1 = 1
也可以使用del語句刪除一些對(duì)象的引用
del var1
支持三種不同的數(shù)字類型:
int(有符號(hào)整型)
float(浮點(diǎn)型)
complex(復(fù)數(shù))
例如:
int float complex
10 10.0 (10+0j)
String(字符串)
字符串或串(String)是由數(shù)字、字母、下劃線組成的一串字符
是編程語言中表示文本的數(shù)據(jù)類型
s = "a1a2···an" # (n>=0)
字串列表有2種取值順序:
從左到右索引默認(rèn)0開始的,最大范圍是字符串長度少1
從右到左索引默認(rèn)-1開始的,最大范圍是字符串開頭
s = 'joveH-H'
print(s) # 輸出完整字符串
print(s[0]) # 輸出字符串中的第一個(gè)字符
# joveH-H
# j
如果要實(shí)現(xiàn)從字符串中獲取一段子字符串
可以使用 [頭下標(biāo):尾下標(biāo)] 來截取相應(yīng)的字符串
其中下標(biāo)是從 0 開始算起,可以是正數(shù)或負(fù)數(shù),下標(biāo)可以為空表示取到頭或尾
獲取的字符串包含頭下標(biāo)的字符,但不包含尾下標(biāo)的字符
print(s[2:5]) # 輸出字符串中第三個(gè)至第五個(gè)之間的字符串
print(s[2:]) # 輸出從第三個(gè)字符開始的字符串
# veH
# veH-H
可以接收第三個(gè)參數(shù),參數(shù)作用是截取的步長
以下實(shí)例在索引 2 到索引 5 的位置并設(shè)置為步長為 2(間隔一個(gè)位置)來截取字符串
print(s[2:5:2]) # 輸出字符串中第三個(gè)至第五個(gè)之間間隔2的字符串
# vH
List(列表)
列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)
支持字符,數(shù)字,字符串甚至可以包含列表(即嵌套)
列表用 [ ] 標(biāo)識(shí),是 python 最通用的復(fù)合數(shù)據(jù)類型
l = ['jove', 10086, 2.23, 'H-H', 20.3]
print(l)
# ['jove', 10086, 2.23, 'H-H', 20.3]
列表中值的切割也可以用到變量 [頭下標(biāo):尾下標(biāo)] ,就可以截取相應(yīng)的列表
從左到右索引默認(rèn) 0 開始,從右到左索引默認(rèn) -1 開始
下標(biāo)可以為空表示取到頭或尾
print(l[-1]) # 輸出列表的最后一個(gè)元素
print(l[1:3]) # 輸出第二個(gè)至第三個(gè)元素
print(l[2:]) # 輸出從第三個(gè)開始至列表末尾的所有元素
print(l[1:5:2]) # 輸出字符串中第二個(gè)至第五個(gè)之間間隔2的元素
# 20.3
# [10086, 2.23]
# [2.23, 'H-H', 20.3]
# [10086, 'H-H']
Tuple(元組)
元組是另一個(gè)數(shù)據(jù)類型,類似于 List(列表)
元組用 () 標(biāo)識(shí)。內(nèi)部元素用逗號(hào)隔開
但是元組中的元素不能二次賦值,相當(dāng)于只讀列表
t = ('jove', 10086, 2.23, 'H-H', 20.3)
t[2] = 1000 # 元組中是非法應(yīng)用
# TypeError: 'tuple' object does not support item assignment
Set(集合)
集合(set)是一個(gè)無序的不重復(fù)元素序列
可以使用大括號(hào) { } 或者 set() 函數(shù)創(chuàng)建集合
s1 = {'g', 'o', 'o', 'g', 'l', 'e'}
s2 = {'g', 'o', 'o', 'g'}
print(s1, s2, s1 - s2)
# {'e', 'o', 'l', 'g'} {'o', 'g'} {'l', 'e'}
注意:創(chuàng)建一個(gè)空集合必須用 set() 而不是 { },因?yàn)?{ } 是用來創(chuàng)建一個(gè)空字典
Dictionary(字典)
字典(dictionary)是除列表以外python之中最靈活的內(nèi)置數(shù)據(jù)結(jié)構(gòu)類型
列表是有序的對(duì)象集合,字典是無序的對(duì)象集合
兩者之間的區(qū)別在于:字典當(dāng)中的元素是通過鍵來存取的,而不是通過偏移存取
字典用"{ }"標(biāo)識(shí)。字典由索引(key)和它對(duì)應(yīng)的值value組成
d = {'jove': 10086, 2.23: 'H-H'}
print(d[2.23])
print(d.keys())
print(d.values())
# H-H
# dict_keys(['jove', 2.23])
# dict_values([10086, 'H-H'])
4. 轉(zhuǎn)換
有時(shí)需要對(duì)數(shù)據(jù)內(nèi)置的類型進(jìn)行轉(zhuǎn)換,只需要將數(shù)據(jù)類型作為函數(shù)名即可
以下幾個(gè)內(nèi)置的函數(shù)可以執(zhí)行數(shù)據(jù)類型之間的轉(zhuǎn)換
這些函數(shù)返回一個(gè)新的對(duì)象,表示轉(zhuǎn)換的值
將x轉(zhuǎn)換為一個(gè)整數(shù)
class int(x, base=10) # x :字符串或數(shù)字,base :進(jìn)制數(shù),默認(rèn)十進(jìn)制
print(int(12.0))
print(int("2e", 16)) # 但如果是帶參數(shù)base的話,x 要以字符串的形式進(jìn)行輸入
# 12
# 46
將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù)
class float([x]) # x:字符串或數(shù)字
print(float(-12))
print(float("20.3"))
# -12.0
# 20.3
創(chuàng)建一個(gè)復(fù)數(shù)
class complex([real[, imag]]) # real:int, float或字符串,imag:int, float
print(complex(1, 2))
print(complex("1+2j"))
# (1+2j)
# (1+2j)
將對(duì)象 x 轉(zhuǎn)換為字符串
class str(object='') # object :對(duì)象
str([10, 0, 86])
# '[10, 0, 86]'
將對(duì)象 x 轉(zhuǎn)換為表達(dá)式字符串
class repr(object) # object :對(duì)象
repr(str([10, 0, 86]))
# "'[10, 0, 86]'"
用來計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對(duì)象
class eval(expression[, globals[, locals]])
# expression:表達(dá)式
# globals:變量作用域,全局命名空間,如果被提供,則必須是一個(gè)字典對(duì)象
# locals:變量作用域,局部命名空間,如果被提供,可以是任何映射對(duì)象
x = 7
print(eval('3 * x'))
# 21無錫人流醫(yī)院 http://xmobile.wxbhnk120.com/
將序列 s 轉(zhuǎn)換為一個(gè)元組
class tuple( seq ) # seq:要轉(zhuǎn)換為元組的序列
print(tuple([1, 2, 3]))
# (1, 2, 3)
將序列 s 轉(zhuǎn)換為一個(gè)列表
class list(tup) # tup:要轉(zhuǎn)換為列表的元組
print(list((1, 2, 3)))
# [1, 2, 3]
轉(zhuǎn)換為可變集合
class set([iterable]) # iterable:可迭代對(duì)象對(duì)象
print(set('google'))
# {'l', 'o', 'g', 'e'}
創(chuàng)建一個(gè)字典
class dict(**kwarg) # **kwargs:關(guān)鍵字
class dict(mapping, **kwarg) # mapping:元素的容器
class dict(iterable, **kwarg) # iterable:可迭代對(duì)象
# 必須是一個(gè)序列 (key,value)元組
print(dict(a='a', b='b', t='t')) # 傳入關(guān)鍵字
print(dict(zip(['one', 'two', 'three'], [1, 2, 3]))) # 映射函數(shù)方式來構(gòu)造字典
print(dict([('one', 1), ('two', 2), ('three', 3)])) # 可迭代對(duì)象方式來構(gòu)造字典
# {'a': 'a', 'b': 'b', 't': 't'}
# {'one': 1, 'two': 2, 'three': 3}
# {'one': 1, 'two': 2, 'three': 3}
轉(zhuǎn)換為不可變集合
class frozenset([iterable]) # iterable:可迭代的對(duì)象,比如列表、字典、元組等等
print(frozenset('google'))
# frozenset({'g', 'l', 'e', 'o'})
如果不提供任何參數(shù),默認(rèn)會(huì)生成空集合
將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符
class chr(i) # i:數(shù)字
print(chr(48), chr(0x31), chr(0o62))
# 0 1 2
將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值
class ord(c) # c:字符
print(ord('6'), ord('A'), ord('a'))
# 54 65 97
將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串
class hex(x) # x:整數(shù)
print(hex(128))
# 0x80
將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串
class oct(x) # x:整數(shù)
print(oct(1024))
# 0o2000
謝謝!
新聞名稱:關(guān)于Python的變量類型
轉(zhuǎn)載注明:http://aaarwkj.com/article26/gojpjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站制作、定制網(wǎng)站、品牌網(wǎng)站制作、外貿(mào)建站、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)