1. 程式人生 > >Python基礎——基本數據類型1

Python基礎——基本數據類型1

open 判斷 位運算 運行 排序 布爾型 ont src sed

數字

  int(整型)

    在32位機器上,整數的位數為32位,取值範圍為-2**31~2**31,即-2147483648~2147483648

    在64位機器上,整數的位數為64位,取值範圍為-2**63~2**63,即-9223372036854775808~9223372036854775808

  long(長整型)

    Python沒有限制長整數數值的大小,但是由於機器內存有限,我們使用的長整數數值不可能無限大,自從Python2.2起,如果整數發生溢出,Python會自動將整數數據轉換為長整數。

    但是,Python3裏沒有長整型,全部是int。

字符串

  

在Python中,加了引號的就是字符串

   技術分享圖片

  在Python中,加單引號和雙引號是沒有任何區別的,而我們有多引號。

  多引號的作用就是表示多行文本

  技術分享圖片

  字符的拼接,可以進行相加和相乘計算

  技術分享圖片

  註意:相加相乘只能是雙方都是字符串,不可以字符加整數

  技術分享圖片

布爾型

  就是1和0,即True和False。

運算符

  算數運算符

  技術分享圖片

  

技術分享圖片
a = 21
b = 10
c = 0
 
c = a + b
print ("1 - c 的值為:", c)
 
c = a - b
print ("2 - c 的值為:", c)
 
c = a * b
print ("3 - c 的值為:
", c) c = a / b print ("4 - c 的值為:", c) c = a % b print ("5 - c 的值為:", c) # 修改變量 a 、b 、c a = 2 b = 3 c = a**b print ("6 - c 的值為:", c) a = 10 b = 5 c = a//b print ("7 - c 的值為:", c)
算數運算 技術分享圖片
1 - c 的值為: 31
2 - c 的值為: 11
3 - c 的值為: 210
4 - c 的值為: 2.1
5 - c 的值為: 1
6 - c 的值為: 8
7 - c 的值為: 2
運行結果

  比較運算符

  技術分享圖片

  

技術分享圖片
a = 21
b = 10
c = 0
 
if ( a == b ):
   print ("1 - a 等於 b")
else:
   print ("1 - a 不等於 b")
 
if ( a != b ):
   print ("2 - a 不等於 b")
else:
   print ("2 - a 等於 b")
 
if ( a < b ):
   print ("3 - a 小於 b")
else:
   print ("3 - a 大於等於 b")
 
if ( a > b ):
   print ("4 - a 大於 b")
else:
   print ("4 - a 小於等於 b")
 
# 修改變量 a 和 b 的值
a = 5;
b = 20;
if ( a <= b ):
   print ("5 - a 小於等於 b")
else:
   print ("5 - a 大於  b")
 
if ( b >= a ):
   print ("6 - b 大於等於 a")
else:
   print ("6 - b 小於 a")
比較運算 技術分享圖片
1 - a 不等於 b
2 - a 不等於 b
3 - a 大於等於 b
4 - a 大於 b
5 - a 小於等於 b
6 - b 大於等於 a
運行結果

  賦值運算符

  技術分享圖片

  

技術分享圖片
a = 21
b = 10
c = 0
 
c = a + b
print ("1 - c 的值為:", c)
 
c += a
print ("2 - c 的值為:", c)
 
c *= a
print ("3 - c 的值為:", c)
 
c /= a 
print ("4 - c 的值為:", c)
 
c = 2
c %= a
print ("5 - c 的值為:", c)
 
c **= a
print ("6 - c 的值為:", c)
 
c //= a
print ("7 - c 的值為:", c)
賦值運算 技術分享圖片
1 - c 的值為: 31
2 - c 的值為: 52
3 - c 的值為: 1092
4 - c 的值為: 52.0
5 - c 的值為: 2
6 - c 的值為: 2097152
7 - c 的值為: 99864
運行結果

  位運算符

  技術分享圖片

  

技術分享圖片
a = 60            # 60 = 0011 1100 
b = 13            # 13 = 0000 1101 
c = 0
 
c = a & b;        # 12 = 0000 1100
print ("1 - c 的值為:", c)
 
c = a | b;        # 61 = 0011 1101 
print ("2 - c 的值為:", c)
 
c = a ^ b;        # 49 = 0011 0001
print ("3 - c 的值為:", c)
 
c = ~a;           # -61 = 1100 0011
print ("4 - c 的值為:", c)
 
c = a << 2;       # 240 = 1111 0000
print ("5 - c 的值為:", c)
 
c = a >> 2;       # 15 = 0000 1111
print ("6 - c 的值為:", c)
位運算 技術分享圖片
1 - c 的值為: 12
2 - c 的值為: 61
3 - c 的值為: 49
4 - c 的值為: -61
5 - c 的值為: 240
6 - c 的值為: 15
運行結果

  邏輯運算符

  技術分享圖片

  

  

技術分享圖片
a = 10
b = 20
 
if ( a and b ):
   print ("1 - 變量 a 和 b 都為 true")
else:
   print ("1 - 變量 a 和 b 有一個不為 true")
 
if ( a or b ):
   print ("2 - 變量 a 和 b 都為 true,或其中一個變量為 true")
else:
   print ("2 - 變量 a 和 b 都不為 true")
 
# 修改變量 a 的值
a = 0
if ( a and b ):
   print ("3 - 變量 a 和 b 都為 true")
else:
   print ("3 - 變量 a 和 b 有一個不為 true")
 
if ( a or b ):
   print ("4 - 變量 a 和 b 都為 true,或其中一個變量為 true")
else:
   print ("4 - 變量 a 和 b 都不為 true")
 
if not( a and b ):
   print ("5 - 變量 a 和 b 都為 false,或其中一個變量為 false")
else:
   print ("5 - 變量 a 和 b 都為 true")
邏輯運算符 技術分享圖片
1 - 變量 a 和 b 都為 true
2 - 變量 a 和 b 都為 true,或其中一個變量為 true
3 - 變量 a 和 b 有一個不為 true
4 - 變量 a 和 b 都為 true,或其中一個變量為 true
5 - 變量 a 和 b 都為 false,或其中一個變量為 false
運行結果

  成員運算符

  技術分享圖片

  

技術分享圖片
a = 10
b = 20
list = [1, 2, 3, 4, 5 ];
 
if ( a in list ):
   print ("1 - 變量 a 在給定的列表中 list 中")
else:
   print ("1 - 變量 a 不在給定的列表中 list 中")
 
if ( b not in list ):
   print ("2 - 變量 b 不在給定的列表中 list 中")
else:
   print ("2 - 變量 b 在給定的列表中 list 中")
 
# 修改變量 a 的值
a = 2
if ( a in list ):
   print ("3 - 變量 a 在給定的列表中 list 中")
else:
   print ("3 - 變量 a 不在給定的列表中 list 中")
成員運算符 技術分享圖片
1 - 變量 a 不在給定的列表中 list 中
2 - 變量 b 不在給定的列表中 list 中
3 - 變量 a 在給定的列表中 list 中
運行結果

  身份運算符

  技術分享圖片

  

技術分享圖片
a = 20
b = 20
 
if ( a is b ):
   print ("1 - a 和 b 有相同的標識")
else:
   print ("1 - a 和 b 沒有相同的標識")
 
if ( id(a) == id(b) ):
   print ("2 - a 和 b 有相同的標識")
else:
   print ("2 - a 和 b 沒有相同的標識")
 
# 修改變量 b 的值
b = 30
if ( a is b ):
   print ("3 - a 和 b 有相同的標識")
else:
   print ("3 - a 和 b 沒有相同的標識")
 
if ( a is not b ):
   print ("4 - a 和 b 沒有相同的標識")
else:
   print ("4 - a 和 b 有相同的標識")
身份運算符 技術分享圖片
1 - a 和 b 有相同的標識
2 - a 和 b 有相同的標識
3 - a 和 b 沒有相同的標識
4 - a 和 b 沒有相同的標識
運行結果

  is 與 “==” 的區別

  is 用於判斷兩個變量引用對象是否為同一個, == 用於判斷引用變量的值是否相等。

  技術分享圖片

  運算符優先級

  以下從高到低排序

  技術分享圖片

  

技術分享圖片
a = 20
b = 10
c = 15
d = 5
e = 0
 
e = (a + b) * c / d       #( 30 * 15 ) / 5
print ("(a + b) * c / d 運算結果為:",  e)
 
e = ((a + b) * c) / d     # (30 * 15 ) / 5
print ("((a + b) * c) / d 運算結果為:",  e)
 
e = (a + b) * (c / d);    # (30) * (15/5)
print ("(a + b) * (c / d) 運算結果為:",  e)
 
e = a + (b * c) / d;      #  20 + (150/5)
print ("a + (b * c) / d 運算結果為:",  e)
優先級 技術分享圖片
(a + b) * c / d 運算結果為: 90.0
((a + b) * c) / d 運算結果為: 90.0
(a + b) * (c / d) 運算結果為: 90.0
a + (b * c) / d 運算結果為: 50.0
運行結果

  

Python基礎——基本數據類型1