『壹』 python中的類型轉換都有什麼,用在什麼場景下
1.字元串(string)
示例: '余慶','yuqing','123','Hello!'
特點: 用引號括起來的文本。
轉換方式: 使用str()函數轉換,str()函數能將數據轉換成其字元串類型,不管這個數據是int類型還是float類型,只要放到括弧里。就能成為字元串類型。
2.整數(int)
示例:-1,0,1,2,123
特點:不帶小數點和引號的普通數字。
轉換方式:使用int()函數轉換, 只有符合整數規范的字元串類數據,才能被int()函數強制轉換。
(註:整數形式的字元串比如'6'和'1',可以被int()函數強制轉換。其次,文字形式,比如中文、火星文或者標點符號,不可以被int()函數強制轉換。
最後,小數形式的字元串,由於Python的語法規則,也不能使用int()函數強制轉換。)
(註:int()函數的本質是將數據轉換為整數。對於浮點數,int()函數會做取整處理。int()函數會直接抹零,直接輸出整數部分。)
3.浮點數(float)
示例:-0.33,3.1415926,1.0
特點:帶小數點的數字,運算結果會存在誤差。
轉換方式:使用float()函數轉換,float()函數也可以將整數和字元串轉換為浮點類型。但同時,如果括弧裡面的數據是字元串類型,那這個數據一定得是數字形式。
『貳』 「python為什麼 -30//7=5」
「//」是速數除法。
它的結果並不是丟棄小數,而是向負無窮大方向舍入。簡單的說就是返回不大於商的一個整數。
即,4.2舍入為4,-4.2舍入為-5。
類似於java中的Floor()。
比如我們在做交易抹零的時候就可以這樣來抹除"分":
fee=3.35
fee=fee//0.1/10#3.3
這樣看似和
fee=int(fee*10)/10
相差不大,但老慮到退款時,fee為負數的情況,客人可能不接受退他3.3元而只能接受退他3.4元,所以就需要使用整數除法了。因為-3.35//0.1/10是-3.4