python入門第四課——數據類型轉換
一、類型轉換的函數
類似於c語言中的強制類型轉換。
二、Non-String轉換成String
(一)Str()函數
str()是最常用的轉換為String的內建函數,可以接受任意對象,並將其轉換為String類型。若object為String類型,則返回一個同類型的對象。
在轉換為String後無論是原來的特殊符號還是空格符都會成為String的元素之一,似乎是在整個變數的值的外頭加了一個「」。
1、List對象轉換成String
實例一:
list1=["one","two","there"]print "列表:",list1 str1=str(list1) print "str1是:",str1 print "str1[0]是:",str1[0]
結果:
列表: [one, two, there]
str1是: [one, two, there]
str1[0]是: [
#結果中的list1是一個字元串「[one, two, there]」
#第一個元素是「[」
#print "字元串:",str1 和
print "列表:",list1
列印出來的結果看似是一樣的,但是如果指定列印的某個元素就能看出區別:
print "字元串:",str1[0] 結果:[
print "列表:",list1 結果:one
-------------------------------------------------------------------
實例二:
# list -> str str2=".".join(list1) print str2
結果:
one.two.there
注意:
#".".join(list1)結果是 one.two.there
#"".join(list1)結果是 onetwothere
2、Tuple對象轉換成String
實例:
tup=(a,b,c)print str(tup)
#結果是「(a, b, c)」
#print str(tup)[0] #結果是「(」
3、Dictionary轉換成String
實例:
dict={"1:":one,2::two} print str(dict)
#結果是:「{"1:":one,2::two}」
(二)str() 和repr()的區別
主要的區別就在repr()支持eval(repr(object)) == object。意思是,元素object轉換成字元串形式(repr(object))之後,可以通過eval()函數轉換回原來的樣子。
eval()
三、Non-int 轉換成int
Int型的最大值僅與系統位數有關,32位:maxInt == 2**(32-1)-1 ; 64位:maxInt == 2**(64-1)-1。可以通過sys.maxint 來查看:
1、long轉換成int
當一個Long > sys.maxint(2**63-1)時,Long類型對象是無法轉換為Int的。詳情:
http://blog.csdn.net/jmilk/article/details/49720611#non-string轉換為string
2、float轉換成int
實例:
print "這個數是:",int(12.5)
結果:12
3、String轉換成int
(1) 10進位string轉換成int
print int(12)
結果:12
(2) 16進位string轉換成int
print int(12,16)
結果:18
print int(aaa,16)
結果是:2730
』aaa』為16進位的一個參數, 參數16表示第一個參數是16進位的。int()轉換以後獲得10進位數,若不指明』aaa』的進位,則會報錯。
四、Non-long轉換成long
num=long(20)print type(num)
結果:<type long>
1、int 轉換成long
int型轉換為long型不需要強制類型轉換,這就是相對的隱式類型轉換,系統會在後台完成。
2、Float 轉換成long
向下取整。實例:
print long(10.2)
結果:10
3、String轉換成long
(1) 10進位string轉換成long
print long(10)
結果:10
注意:不能long(10.2)
(2)16進位string轉換成long
print long(aaa,16)
結果:2730
Int與Long類型的數據非常類似,唯一的區別在於,Long類型的數據範圍更加大。(Int)
五、Non-float轉換成float
當參數為String時,只能出現數字和一個點額任意組合,若出現多個點號,則會出現異常。
Float()的參數只能是string 和整數。
六、轉換成 list
(一)string轉換為list
List(str1)
推薦閱讀:
※雨沐田:數據分析有什麼作用呢?
※數據分析學習日記一 學習計劃
※Python SimPy 模擬系列 (2)
※用數據講故事
※MySQL入門