數(shù)字是編程語言中最基礎(chǔ)的數(shù)據(jù)類型糊昙。
數(shù)字分類
優(yōu)先級問題
類型強制轉(zhuǎn)換
1. 數(shù)字類型
Python中數(shù)字類型:
1)整數(shù):例如:1, 100
2)布爾:True释牺,F(xiàn)alse没咙;
3)浮點數(shù):例如3.14, 10.1;
>>> a = 20
>>> b = True
>>> pi = 3.14
>>>
2. 優(yōu)先級問題
先看下面例子:
>>> r = 10
>>> pi = 3.14
>>> c = 2 * pi * r
>>> c
62.800000000000004
>>> r + True
11
>>> pi + True
4.140000000000001
整數(shù)和浮點數(shù)運算結(jié)果是浮點镜撩;
整數(shù)和布爾值運算結(jié)果是整數(shù)袁梗;
浮點和布爾值運算結(jié)果是浮點遮怜;
所以優(yōu)先級順序:浮點>整數(shù)>布爾锯梁。
不同數(shù)字類型進行算數(shù)運算過程:
內(nèi)部強制轉(zhuǎn)化數(shù)據(jù)類型,例如浮點和整數(shù):
先將整數(shù)強制轉(zhuǎn)化為浮點數(shù)陌凳,然后進行運算合敦。
3. 數(shù)據(jù)類型強制轉(zhuǎn)化:
- 數(shù)字之間轉(zhuǎn)換
>>> pi = 3.14
>>> r = 10
>>> float(r) #整數(shù)轉(zhuǎn)浮點
10.0
>>> int(pi) #浮點轉(zhuǎn)整數(shù)
3
>>> bool(pi) #浮點轉(zhuǎn)布爾
True
>>> bool(0) #整數(shù)轉(zhuǎn)布爾
False
>>>
三個函數(shù)int充岛,float,bool夜只。
- 將字符串轉(zhuǎn)化為數(shù)字
>>> s = '16'
>>> int(s) #強制轉(zhuǎn)化為整數(shù)蒜魄,10進制
16
>>> int(s, 16) #16進制权悟,16:1 * 16 + 6 = 22
22
>>> int('0x16', 16) #16進制
22
>>> bool(s) #布爾值
True
>>> float(s) #浮點數(shù)
16.0
>>> int('a16') #10進制必須純數(shù)字字符串,否則異常
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'a16'
如何將數(shù)字轉(zhuǎn)成字符串?根據(jù)前面內(nèi)容可以使用格式化方式:
>>> '%d' % 10 #格式化的
'10'
>>>
另外一種方式我們在后面內(nèi)容中詳細介紹榔昔。