python变量无需指定类型对吗_Python变量类型 - osc_3rgq3dae的个人空间 - OSCHINA - 中文开源技术交流社区...
變量存儲在內(nèi)存中的值,這就意味著在創(chuàng)建變量時會在內(nèi)存開辟一個空間。
基于變量的數(shù)據(jù)類型,解析器會分配指定內(nèi)存,并決定什么數(shù)據(jù)可以被存儲在內(nèi)存中。
因此變量可以指定不同的數(shù)據(jù)類型,這些變量可以存儲整數(shù)、小數(shù)、或字符。
變量賦值
Python中的變量賦值不需要類型聲明。
每個變量在內(nèi)存中創(chuàng)建,都包括變量的標識,名稱和數(shù)據(jù)這些信息。
每個變量在使用前都必須賦值,變量復制后該變量才會被創(chuàng)建
等號 = 用來給變量賦值
等號運算符佐伯按是一個變量名,右邊是存儲在變量中的值
/***var.py***/count= 100miles= 1000.3name= "john"
printcountprintmilesprint name
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python var.py
100
1000.3
john
多個變量賦值
Python允許你同時為多個變量賦值
a = b = c = 1
以上實例,創(chuàng)建一個整型對象,值為1,三個變量被分配到相同的內(nèi)存上。
你也可以為多個對象指定多個變量
a,b,c = 1,2,”John”
以上實例,兩個整型對象1和2分別分配給變量a和b,字符串“John“分配給變量c
標準數(shù)據(jù)類型
在內(nèi)存中存儲的數(shù)據(jù)可以有多種類型。
Python定了一些標準類型,用于存儲各種類型的數(shù)據(jù)
Python有五種標準數(shù)據(jù)類型
l? Number
l? String
l? List
l? Tuple
l? Dictionary
Python數(shù)字
數(shù)字數(shù)據(jù)類型用于存儲數(shù)字。
他們是不可改變的數(shù)據(jù)類型,這意味著改變數(shù)字數(shù)據(jù)類型會分配一個新對象。
當你指定一個值時,Number對象就會被創(chuàng)建
也可以使用del語句刪除一些對象的引用,del的語法是
del var1[,var2[,var3][…,varN]]
也可以使用del語句刪除單個或多個對象的引用
delvardel var_a,var_b
Python支持四種不同的數(shù)字類型
int(有符號整型)
long(長整形,可以代表八進制和十六進制)
float(浮點型)
complex(復數(shù))
一些數(shù)值類型的實例:
l? 長整形也可以使用小寫l,但是還建議使用大寫L,避免與數(shù)字1混淆。
l? python還支持附屬,復數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,可以用a+bj,或者comlpex(a,b)表示,復數(shù)的實部a和虛部b都是浮點型
Python字符串
字符串或串(String)是由數(shù)字、字母、下劃線組成的一串字符。
一般記為
s = “a1a2a3…an”(n>=0)
它是編程語言中表示文本的數(shù)據(jù)類型
Python的字串列表由兩種取值順序
從左至右索引默認0開始,最大范圍是字符串長度少1
從右至左所以默認-1開始,最大范圍是字符串開頭
如果你要實現(xiàn)從字符串中獲取一段子字符串的話,可以使用[頭下標:尾下標]來截取相應的字符串,其中下標是從0開始算起,可以是正數(shù)或負數(shù),下標可以為空表示取到頭或尾。
[頭下標:尾下標]獲取的子字符串 頭下標的字符,但不包含尾下標的字符。
例如:
s =‘a(chǎn)bcd’
s[1:5]
‘bade’
當使用以冒號為分隔的字符串,python返回一個新的對象,結(jié)果包含了以這對偏移標識的連續(xù)內(nèi)存,左邊的開始是包含了下邊界。
上面的結(jié)果包含了s[1]的值b,而取到的最大范圍不包括尾下標,也就是s[5]的值f
加號(+)是字符串連接運算符,星號(*)是重復操作,如下:
/***string.py***/str= 'hello world'
printstrprintstr[0]print str[2:5]print str[2:]print str * 2
print str + "TEST"
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python string.py
hello world
h
llo
llo world
hello worldhello world
hello worldTEST
Python列表截取可以接受第三個參數(shù),參數(shù)作用是截取的步長,以下實例在索引1到索引4的位置并設(shè)置為步長為2(間隔一個位置)來截取字符串
/***
letters.py
***/
letters = ['c','h','e','c','k','i','o']
print letters[1:4:2]
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python letter.py
['h', 'c']
Python列表
List(列表)是Python中使用的最頻繁的數(shù)據(jù)類型
列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實現(xiàn),它支持字符,數(shù)字,字符串甚至包含列表(即嵌套)。
列表用[ ]標識,是python最通用的符合數(shù)據(jù)類型。
列表中的值的切割也可以用到變量[頭下標:尾下標],就可以截取相應的列表,從左到右索引默認0開始,從右向左索引默認-1開始,下標可以為空表示取到頭或尾。
加號表示列表連接運算符,星號*是重復操作,以下實例:
/***list.py***/list= ['runoob',786,2.23,'john',70.2]
tinylist= [123,'john']printlistprintlist[0]print list[1:3]print list[2:]print tinylist * 2
print list + tinylist
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python list.py
['runoob', 786, 2.23, 'john', 70.2]
runoob
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['runoob', 786, 2.23, 'john', 70.2, 123, 'john']
Python元組
元組室另外一個數(shù)據(jù)類型,類似List(列表)
元組用()標識。內(nèi)部元素用逗號隔開,但是元組不能二次賦值,相當于只讀列表。
/***arr.py***/tuple= ('runoob', 786 ,2.23 , 'john', 70.2)
tinytuple= (123,'john')printtupleprinttuple[0]print tuple[1:3]print tuple[2:]print tinytuple * 2
print tuple + tinytuple
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python arr.py
('runoob', 786, 2.23, 'john', 70.2)
runoob
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('runoob', 786, 2.23, 'john', 70.2, 123, 'john')
Python字典
字典(dictionary)室除列表以外python之中最靈活的內(nèi)置數(shù)據(jù)結(jié)構(gòu)。列表是有序的對象集合,字典是無序的對象集合。
兩者之間的區(qū)別在于:字典當中的元素是通過鍵來存儲的,而不是通過存儲的。
字典是用“{ }” 來標識,字典由索引和它對應的值value組成。
/***dic.py***/dict={}
dict['one'] = "this is one"dict[2] = "this is two"tinydict= {'name':'john','code':6743,'dept':'sale'}print dict['one']print dict[2]printtinydictprinttinydict.keys()print tinydict.values()
運行結(jié)果:
robot@ubuntu:~/wangqinghe/python/20190820$ python dic.py
this is one
this is two
{'dept': 'sale', 'code': 6743, 'name': 'john'}
['dept', 'code', 'name']
['sale', 6743, 'john']
Python數(shù)據(jù)類型轉(zhuǎn)換
有時候,我們需要對數(shù)據(jù)內(nèi)置的類型進行轉(zhuǎn)換,數(shù)據(jù)類型的轉(zhuǎn)換,你只需要數(shù)據(jù)類型作為函數(shù)名即可。
以下幾個內(nèi)置函數(shù)可以執(zhí)行數(shù)據(jù)類型之間的轉(zhuǎn)換,這些函數(shù)返回一個新的對象,表示轉(zhuǎn)換的值。
函數(shù)
描述
int(x [,base])
將x轉(zhuǎn)換為一個整數(shù)
long(x [,base] )
將x轉(zhuǎn)換為一個長整數(shù)
float(x)
將x轉(zhuǎn)換到一個浮點數(shù)
complex(real [,imag])
創(chuàng)建一個復數(shù)
str(x)
將對象 x 轉(zhuǎn)換為字符串
repr(x)
將對象 x 轉(zhuǎn)換為表達式字符串
eval(str)
用來計算在字符串中的有效Python表達式,并返回一個對象
tuple(s)
將序列 s 轉(zhuǎn)換為一個元組
list(s)
將序列 s 轉(zhuǎn)換為一個列表
set(s)
轉(zhuǎn)換為可變集合
dict(d)
創(chuàng)建一個字典。d 必須是一個序列 (key,value)元組。
frozenset(s)
轉(zhuǎn)換為不可變集合
chr(x)
將一個整數(shù)轉(zhuǎn)換為一個字符
unichr(x)
將一個整數(shù)轉(zhuǎn)換為Unicode字符
ord(x)
將一個字符轉(zhuǎn)換為它的整數(shù)值
hex(x)
將一個整數(shù)轉(zhuǎn)換為一個十六進制字符串
oct(x)
將一個整數(shù)轉(zhuǎn)換為一個八進制字符串
總結(jié)
以上是生活随笔為你收集整理的python变量无需指定类型对吗_Python变量类型 - osc_3rgq3dae的个人空间 - OSCHINA - 中文开源技术交流社区...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python做出来的东西_【python
- 下一篇: sae mysql django_Dja