python運算符與數據類型


python運算符

Python語言支持以下類型的運算符:

  • 算術運算符
  • 比較(關系)運算符
  • 賦值運算符
  • 邏輯運算符
  • 位運算符
  • 成員運算符
  • 身份運算符
  • 運算符優先級
以下假設變量:  a=10,b=20

算數運算:

比較運算:

賦值運算:

邏輯運算:

成員運算:

身份運算:

 

位運算:

示例

復制代碼
 1 #!/usr/bin/python
 2 # -*- coding: UTF-8 -*-
 3  
 4 a = 60            # 60 = 0011 1100 
 5 b = 13            # 13 = 0000 1101 
 6 c = 0
 7  
 8 c = a & b;        # 12 = 0000 1100
 9 print "1 - c 的值為:", c
10  
11 c = a | b;        # 61 = 0011 1101 
12 print "2 - c 的值為:", c
13  
14 c = a ^ b;        # 49 = 0011 0001
15 print "3 - c 的值為:", c
16  
17 c = ~a;           # -61 = 1100 0011
18 print "4 - c 的值為:", c
19  
20 c = a << 2;       # 240 = 1111 0000
21 print "5 - c 的值為:", c
22  
23 c = a >> 2;       # 15 = 0000 1111
24 print "6 - c 的值為:", c
復制代碼

以上實例輸出結果:

1
2
3
4
5
6
1  -  c 的值為:  12
2  -  c 的值為:  61
3  -  c 的值為:  49
4  -  c 的值為:  - 61
5  -  c 的值為:  240
6  -  c 的值為:  15

  

運算符優先級:

python的數據類型

計算機顧名思義就是可以做數學計算的機器,因此,計算機程序理所當然地可以處理各種數值。但是,計算機能處理的遠不止數值,還可以處理文本、圖形、音頻、視頻、網頁等各種各樣的數據,不同的數據,需要定義不同的數據類型。在Python中,能夠直接處理的數據類型有以下幾種:

 

整數

Python可以處理任意大小的整數,當然包括負整數,在程序中的表示方法和數學上的寫法一模一樣,例如:1,100,-8080,0,等等。

計算機由於使用二進制,所以,有時候用十六進制表示整數比較方便,十六進制用0x前綴和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。

浮點數

浮點數也就是小數,之所以稱為浮點數,是因為按照科學記數法表示時,一個浮點數的小數點位置是可變的,比如,1.23x109和12.3x108是相等的。浮點數可以用數學寫法,如1.23,3.14,-9.01,等等。但是對於很大或很小的浮點數,就必須用科學計數法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以寫成1.2e-5,等等。

整數和浮點數在計算機內部存儲的方式是不同的,整數運算永遠是精確的(除法難道也是精確的?是的!),而浮點數運算則可能會有四舍五入的誤差。

布爾值

布爾值和布爾代數的表示完全一致,一個布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來:

1 >>> True
2 True
3 >>> False
4 False
5 >>> 3 > 2
6 True
7 >>> 3 > 5
8 False

and運算是與運算,只有所有都為True,and運算結果才是True:布爾值可以用and、or和not運算。

1 >>> True and True
2 True
3 >>> True and False
4 False
5 >>> False and False
6 False

or運算是或運算,只要其中有一個為True,or運算結果就是True:

1 >>> True or True
2 True
3 >>> True or False
4 True
5 >>> False or False
6 False

布爾值經常用在條件判斷中,比如:

1 if age >= 18:
2     print 'adult'
3 else:
4     print 'teenager'

 

字符串

a)字符串定義

 

字符串或串(String)是由數字、字母、下划線組成的一串字符。,字符串是我們最常用到的,我們用 '', "", "''"(三重引號(docstring)除了能定義字符串以外,還可以用作注釋),都可以定義字符串,特性不可修改,例子付下:

1 >>> str1 = "qwewqeqwe"
2 >>> str2 = 'qwewqe'
3 >>> str3 = "'qweqrqasd'"

 


b)字符串方法

 

 1 name = 'caicaidetong'
 2 name.capitalize()  首字母大寫
 3 name.casefold()   大寫全部變小寫
 4 name.center(50,"-")  輸出 '---------------------caicaidetong----------------------'
 5 name.count('cai') 統計 cai出現次數
 6 name.encode()  將字符串編碼成bytes格式
 7 name.endswith("ong")  判斷字符串是否以ong結尾
 8  name.find('A')  查找A,找到返回其索引, 找不到返回-1
 9  
10 format : 連接字符串方法,格式化字符串
11     >>> msg = "my name is {}, and age is {}"
12     >>> msg.format("caicai",24)
13     'my name is caicai, and age is 22'
14     >>> msg = "my name is {1}, and age is {0}"
15     >>> msg.format("caicai",24)
16     'my name is 24, and age is caicai'
17     >>> msg = "my name is {name}, and age is {age}"
18     >>> msg.format(age=24,name="caicai")
19     'my name is caicai, and age is 24'
20  
21  
22  
23 msg.index('c')  返回a所在字符串的索引
24 msp.split(' ') 分割字符串
25 msg.strip() 刪除頭部和尾部的空格
26 msg.swapcase() 大小寫互換
27  
28 >>> b="ddefdsdff_哈哈"
29 >>> b.isidentifier() #檢測一段字符串可否被當作標志符,即是否符合變量命名規則
30 True
 1 字符串切片(顧頭不顧尾)
 2 str = '0123456789′
 3 print str[0:3] #截取第一位到第三位的字符
 4 print str[:] #截取字符串的全部字符
 5 print str[6:] #截取第七個字符到結尾
 6 print str[:-3] #截取從頭開始到倒數第三個字符之前
 7 print str[2] #截取第三個字符
 8 print str[-1] #截取倒數第一個字符
 9 print str[::-1] #創造一個與原字符串順序相反的字符串
10 print str[-3:-1] #截取倒數第三位與倒數第一位之前的字符
11 print str[-3:] #截取倒數第三位到結尾

列表list

列表是由一序列特定順序排列的元素組成的。可以把字符串,數字,字典等都可以任何東西加入到列表中,日中的元素之間沒有任何關系。列表也是自帶下標的,默認也還是從0開始。

列表是我們以后最常用的數據類型之一,通過列表可以對數據實現最方便的存儲、修改等操作

 

定義列表

1 list1 = ['a',1,'123','qwe']

 

通過下標訪問列表中的元素,下標從0開始計數

>>> list1 = ['a',1,'123','qwe']
>>> list1[1] 取第二個值
1
>>> list1[0] 取第一個值
'a'
>>> list1[-1]  取最后一個值,
'qwe'

切片操作

 1 >>> list1[1:4]  取下標1到4的值,不包含4
 2 [1, '123', 'qwe']
 3 >>> list1[1:-1] 取下標1到最后一個值,不包含最后一個。
 4 [1, '123']
 5 >>> list1[0:3] 取下標0到3的值,不包含下標3的值
 6 ['a', 1, '123']
 7 >>> list1[:3] 取開頭到3的值
 8 ['a', 1, '123']
 9 >>> list1[2:] 取2到結尾的值 
10 ['123', 'qwe']
11 >>> list1[0::2] 取0到結尾的值, 2表示間隔一個值,取一個
12 ['a', '123']

列表其他常用操作


1
追加 append 2 3 >>> list1.append("xin") 4 >>> list1 5 ['a', 1, '123', 'qwe', 'xin'] 6 插入insert 7 8 >>> list1.insert(2,'charu') 從下標2后面插入 9 >>> list1 10 ['a', 1, 'charu', '123', 'qwe', 'xin'] 11 刪除 12 13 >>> list1.pop() 刪除最后一個值 14 'xin' 15 >>> list1 16 ['a', 1, 'charu', '123', 'qwe'] 17 >>> list1.remove('qwe') 刪除指定值 18 >>> list1 19 ['a', 1, 'charu', '123']
20 >>> list1.sort() 排序
21 >>> list1
22 ['1', '123', 'a', 'charu']

 



 
 
 
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM