天天看點

python基礎-基本資料類型

一、進制轉換

  1. 十進制:逢10進1,1,2,3,4,5,6,7,8,9,10,11······
  2. 二進制:逢2進1, 001,010,011,100,101,110,111······
  3. 八進制:逢8進1,1,2,3,4,5,6,7,10,11,12,13,14,15,16,20······
  4. 十六進制:逢16進1,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
  5. 二進制 -> 十進制:10010010 -> 146,2**7+2**4+2**1
  6. 二進制 -> 八進制:10010010 -> 0o222, 10(2) 010(2) 010(2)
  7. 二進制 -> 十六進制:10010010 -> 0x92, 1001(9) 0010(2)

二、資料類型

python基礎-基本資料類型

三、辨別符和關鍵字

  • 辨別符由字母、下劃線和數字組成,且數字不能開頭。
  • 辨別符是區分大小寫的:Andy != andy。
  • 命名規則:見名字知意。
  • 小駝峰式命名法(lower camel case): 第一個單詞以小寫字母開始;第二個單詞的首字母大寫,例如:myName、aCat。
  • 大駝峰式命名法(upper camel case): 每一個單字的首字母都采用大寫字母,例如:FirstName、LastName。
  • 還有一種命名法是用下劃線“_”來連接配接所有的單詞,比如send_buf。
  • 關鍵字是已經被python預定義,且具有特殊含義的辨別符,不允許開發者自行定義和關鍵次相同名字的變量,否則會引起程式錯誤。
注:如何在python中檢視關鍵字?

>>> import keyword
>>> keyword.kwlist
           

四、python中的輸出

(一)占位符

>>> age = 
>>> print('我今年%d歲了'% age)
我今年歲了
           

(二)轉義符

python基礎-基本資料類型
可以用反斜杠對雙引号進行轉義。

>>> print("I l\"o\"ve you")
I l"o"ve you

、可以用單引号引起這個字元串。

>>> print("I l'o've you")
I l'o've you
           

(三)格式符号和格式化操作符輔助指令

格式符号 轉換
%s 通過str() 字元串轉換來格式化
%d 有符号十進制整數
%o 八進制整數
%x 十六進制整數(小寫字母)
%X 十六進制整數(大寫字母)
%e 索引符号(小寫’e’)
%f 浮點實數,浮點數預設取小數點後六位,要标明.2f
%G %f和%E的簡寫
m.n m顯示最小總寬度,n是小數點後的位數,“。是小數點”
- 用于左對齊
+ 在正數前面顯示“+”号
# 在八進制前顯示0o,在十六進制前顯示0x
顯示的數字前面填充“0”取代空格
用format()格式化str1

>>> str1 = "{a} love {b}.{c}"
>>> print(str1.format(a = "I", b = "you", c = "com"))
I love you.com

、如果為{},{},{}則預設,不用說明。

>>> str1 = "{0} love {1}.{2}"
>>> print(str1.format("I", "you", "com"))
I love you.com

、怎麼顯示PI = ,用format前面字元串怎麼寫?

>>> print("{0}{1:.2f}".format("PI = ",))
PI = 
           

五、運算符

(一)算數運算符

運算符 描述 執行個體
+ 兩個對象相加 a + b 輸出結果 30
- 得到負數或是一個數減去另一個數 a - b 輸出結果 -10
* 兩個數相乘傳回一個被重複若幹次的字元串 a * b 輸出結果 200
/ b / a 輸出結果 2
// 取整除 傳回商的整數部分 9//2 輸出結果 4 , 9.0//2.0 輸出結果 4.0
% 取餘 傳回除法的餘數 b % a 輸出結果 0
** 指數 a**b 為10的20次方, 輸出結果 100000000000000000000
算數運算符的優先級: * > / % // > + - 有括号要先算括号裡面的

(二)指派運算符

運算符 描述 執行個體
+= 加法指派運算符 c += a 等效于 c = c + a
-= 減法指派運算符 c -= a 等效于 c = c - a
*= 乘法指派運算符 c = a 等效于 c = c a
/= 除法指派運算符 c /= a 等效于 c = c / a
%= 取模指派運算符 返c %= a 等效于 c = c % a
**= 幂指派運算符 c = a 等效于 c = c a
//= 取整除指派運算符 c //= a 等效于 c = c // a

(三)比較(即關系)運算符

運算符 描述
== 檢查兩個操作數的值是否相等,如果是則條件變為真。
!= 檢查兩個操作數的值是否相等,如果值不相等,則條件變為真。
> 檢查左操作數的值是否大于右操作數的值,如果是,則條件成立。
< 檢查左操作數的值是否小于右操作數的值,如果是,則條件成立。
>= 檢查左操作數的值是否大于或等于右操作數的值,如果是,則條件成立。
<= 檢查左操作數的值是否小于或等于右操作數的值,如果是,則條件成立。

(四)邏輯運算符

運算符 邏輯表達式 描述
and x and y “與”:如果 x 為 False,x and y 傳回 False,否則它傳回 y 的值。
or x or y “或”:如果 x 是 True,傳回 True,否則它傳回 y 的值。
not not x “非”:如果 x 為 True,傳回 False 。如果 x 為 False,傳回 True。

1、邏輯運算符優先級:not > and > or

2、在Python中True為1,False為0

3、台條件裡,隻要不為0,條件都成立。

六、資料類型轉換

函數 轉換
int(x [,base ]) 将x轉換為一個整數
float(x) 将x轉換為一個浮點數
complex(real [,imag ]) 建立一個複數,real為實部,imag為虛部
str(x) 将對象 x 轉換為字元串
repr(x) 将對象 x 轉換為表達式字元串
eval(str) 用來計算在字元串中的有效Python表達式,并傳回一個對象
tuple(s) 将序列 s 轉換為一個元組
list(s) 将序列 s 轉換為一個清單
chr(x) 将一個整數轉換為一個Unicode字元
ord(x) 将一個字元轉換為它的整數值
hex(x) 将一個整數轉換為一個十六進制字元串
oct(x) 将一個整數轉換為一個八進制字元串
bin(x) 将一個整數轉換為一個二進制字元串
、把str1轉化為八進制數的整形

>>> str1 = '10'
>>> num = int(str1, )


、複數的用法

>>> c1 =  + a4
>>> c2 = complex(, )  # c1和c2顯示的結果一樣

、repr() 括号中不管是什麼類型,都能轉為為字元串。   
>>> a = 
>>> repr(a)
'10'

、eval() 把字元串形式還原成為原來的類型
>>> a = '[1,2,3]'
>>> eval(a)
[,,]

、十六進制數轉化成十進制數

>>> a = '0xa'
>>> b = int(a, )

>
           

七、補充

  • 如何在python中四舍五入?
>>> a = 
>>> b = 
>>> c = int(a+)
>>> d = int(b+)
           
  • 計算出 not 1 or 0 and 1 or 3 and 4 or 5?
、python中and是從左到右計算表達式的,則都為真,則傳回最後一個值,若為假,則傳回第一個假的值。

>>> - and -
-
>>> - and 

>>>  and -


、python中的or也是從左到右計算表達式的,誰先為真取誰。

>>> - or -
-
>>>  or -
-

           
  • 運算符排序

    幂運算 > 正負号 > 算術運算符 > 比較運算符 > 邏輯運算符、

  • 位運算

    ①&按位與:全1才1,否則0. 任何數&1為0,&0為0

    ② | 按位或: 有1就1,都是0才為0,任何數 | 0 都為任何數。

    ③^按位異或:不相同為1,相同為0

    ④~按位取反:~9 = 10 n取~ 為 ~(n+1)

  • 如何快速完成乘法和除法運算

    ①<<按位左移: 快速完成乘法 5 << 1 左移一位乘以2

    ②>>按位右移:快速完成除法 5 >> 1 右移一位地闆除2

繼續閱讀