學習筆記-小甲魚Python3學習第五講:閑聊之python數據類型
整型:1、234、54
浮點型:12.234、2.3e5 = 230000.0、1.5e-3 = 0.0015
布爾型:True、False。True + True 返回 2,True + False 返回1,True * False 返回0,True / False 會報錯
類型轉換:
字符型轉整型:
>>> a = '520'
>>> b = int(a)
>>> a
'520'
>>> b
520
浮點型轉整型:
>>> a = 5.68
>>> b = int(a)
>>> a
5.68
>>> b
5
字符型轉浮點型:
>>> a = '520'
>>> b = float(a)
>>> a
'520'
>>> b
520.0
整型轉浮點型:
>>> a = 520
>>> b = float(a)
>>> a
520
>>> b
520.0
浮點型轉字符串:
>>> a = 6.52
>>> b = str(a)
>>> a
6.52
>>> b
'6.52'
獲取關於數據類型的信息,使用type()函數和isinstance()函數:
>>> a = '520'
>>> type(a)
<class 'str'>
>>> type(5.32)
<class 'float'>
>>> type(True)
<class 'bool'>
>>> type(3e-9)
<class 'float'>
>>> a = '520'
>>> isinstance(a,str)
True
>>> isinstance(a,int)
False
>>> isinstance(a,float)
False
二、課後作業:
0. 在 Python 中,int 表示整型,那你還記得 bool、float 和 str 分別表示什麽嗎?
bool布爾型,float浮點型,str字符型。
1.你知道為什麽布爾類型(bool)的 True 和 False 分別用 1 和 0 來代替嗎?
計算機只認識二進制的0和1,所以用True和False分別用1和0代替省去了轉換的步驟
2.使用 int() 將小數轉換為整數,結果是向上取整還是向下取整呢?
向下取整,小數點後面的都丟棄
3.人類思維是習慣“四舍五入”法,有什麽辦法使得int()按照“四舍五入”的方式取整?
原浮點數加0.5,然後再轉換為int型
例:
>>> a = 3.73
>>> int( a + 0.5 )
4
4.取的一個變量的類型,視頻中介紹可以使用type()和 isinstance(),你更傾向使用哪個?
type() 直接輸入變量後返回類型;isinstance() 需要先輸入變量和類型,函數講變量和類型做比較厚,相同返回True,不同返回False。
5.Python3 可以給變量命名中文名,知道為什麽嗎?
Python3 默認使用 UTF-8編碼,支持中文,
---------------------分割線,哈哈哈-------------------
三、動動手:
0.針對視頻中小甲魚提到的小漏洞,再次改進我們的小遊戲:當用戶輸入錯誤類型的時候,及時提醒用戶重新輸入,防止程序崩潰。
print('--------猜數字--------')
import random
num = random.randint(1,10)
count = 3
guess =0
print('請輸入你猜的數字:',end='')
while guess != num and count > 0:
tmp = input()
while not tmp.isdigit():
tmp = input('sorry,輸入類型有誤,請輸入一個整數:')
guess = int(tmp)
count = count - 1
if guess == num:
print('猜對啦!')
else:
if guess > num:
print('大了!')
else:
print('小了!')
if count > 0:
print('再來一次:',end='')
else:
print('機會用完了!')
print('GAME OVER!')
1.寫一個程序,判斷給定年份是否為閏年
print('-----------------求閏年------------')
tmp = input('請輸入年份:')
while not tmp.isdigit():
tmp = input('sorry,請輸入正確年份:')
year = int(tmp)
if year/400 == int(year/400):
print(tmp+'是閏年')
else:
if (year/4 == int(year/4)) and (year/100 != int(year/100)):
print(tmp+'是閏年')
else:
print(tmp+'不是閏年')
學習筆記-小甲魚Python3學習第五講:閑聊之python數據類型