1. 程式人生 > >python 中的字串轉義序列、字串格式化、操作符、關鍵字總結

python 中的字串轉義序列、字串格式化、操作符、關鍵字總結

1.字串轉義序列

轉義字元 描述
\(在行尾時) 續行符
\\ 反斜槓符號
\' 單引號
\" 雙引號
\a 響鈴
\b 退格(Backspace)
\e 轉義
\000
\n 換行
\v 縱向製表符
\t 橫向製表符
\r 回車
\f 換頁
\oyy 八進位制數yy代表的字元,例如:\o12代表換行
\xyy 十進位制數yy代表的字元,例如:\x0a代表換行
\other 其它的字元以普通格式輸出

2.字串格式化


3.操作符

一、算術運算子


注意:

雙斜槓 // 除法總是向下取整。 


從符點數到整數的轉換可能會舍入也可能截斷,建議使用math.floor()和math.ceil()明確定義的轉換。

Python定義pow(0, 0)和0 ** 0等於1。


二、比較運算子

運算子 描述
< 小於
<= 小於或等於
> 大於
>= 大於或等於
== 等於
!= 不等於
is 判斷兩個識別符號是不是引用自一個物件
is not 判斷兩個識別符號是不是引用自不同物件

注意:

八個比較運算子優先順序相同。

Python允許x < y <= z這樣的鏈式比較,它相當於x < y and y <= z。 


複數不能進行大小比較,只能比較是否相等。

三、邏輯運算子

運算子 描述 備註
x or y if x is false, then y
, elsex
x andy if x is false, then x, elsey
not x if x is false, then True,elseFalse

注意:

 or是個短路運算子,它只有在第一個運算數為False時才會計算第二個運算數的值。


and也是個短路運算子,它只有在第一個運算數為True時才會計算第二個運算數的值。


not的優先順序比其他型別的運算子低,所以not a == b相當於not (a == b),而 a == not b是錯誤的。

四、位運算子

運算子 描述 備註
x | y 按位或運算子
x ^ y 按位異或運算子
x y 按位與運算子
x << n 左移動運算子
x >> n 右移動運算子
~x 按位取反運算子

五、賦值運算子

複合賦值運算子與算術運算子是一一對應的:



六、成員運算子

Python提供了成員運算子,測試一個元素是否在一個序列(Sequence)中。

運算子 描述
in 如果在指定的序列中找到值返回True,否則返回False。
not in 如果在指定的序列中沒有找到值返回True,否則返回False。

4.關鍵字總結

Python中的關鍵字包括如下:

and del from not while as elif global or with assert else if pass yield break except import print class exec in raise continue finally is return def for lambda try

你想看看有哪些關鍵字?OK,開啟一個終端,就像這樣~

[email protected]:~$ python
Python 2.7.3 (default, Jan 2 2013, 16:53:07) 
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import keyword
>>> keyword.kwlist
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> 

============================== 華麗的 正文分隔符 ========================================

看到這些關鍵字你還能記得多少?你不妨自己一個一個對照想想它的用法,下面是我總結的,我根據前面的學習筆記將上述關鍵字分為以下幾類:

1.判斷、迴圈

對於Python的迴圈及判斷主要包括這些關鍵字:

if elif else for while break continue and or is not in

這幾個關鍵字在前面介紹 if 語法、while語法、for語法以及and...or語法中已有介紹,下面再一筆帶過:

1.1 if 語法

if語法與C語言、shell指令碼之下的非常類似,最大的區別就是冒號以及嚴格的縮排,當然這兩點也是Python區別於其他語言的地方:

if condition1:

do something

elif condition2:

do another thing

else:

also do something

1.2 while 語法

Python的while語法區別於C、shell下的while除了冒號及縮排之外,還有一點就是while可以攜帶一個可選的else語句:

while condition:

do something

else:

do something

注:else語句是可選的,但是使用while語句時一定要注意判斷語句可以跳出!

1.3 for 語法

與while類似,Python的for迴圈也包括一個可選的else語句(跳出for迴圈時執行,但是如果是從break語句跳出則不執行else語句塊中的程式碼!),而且for 加上 關鍵字in就組成了最常見的列表解析用法(以後會寫個專門的部落格)。

下面是for的一般用法:

for i in range(1,10,2):

do something

if condition:

break

else:

do something

for的列表解析用法:

for items in list:

print items

1.4 and...or 語法

Python的and/or操作與其他語言不同的是它的返回值是參與判斷的兩個值之一,所以我們可以通過這個特性來實現Python下的 a ? b : c !

有C語言基礎的知道 “ a ? b : c ! ” 語法是判斷 a,如果正確則執行b,否則執行 c!

而Python下我們可以這麼用:“ a and b or c ”(此方法中必須保證b必須是True值),python自左向右執行此句,先判斷a and b :如果a是True值,a and b語句仍需要執行b,而此時b是True值!所以a and b的值是b,而此時a and b or c就變成了b or c,因b是True值,所以b or c的結果也是b;如果a是False值,a and b語句的結果就是a,此時 a and b or c就轉化為a or c,因為此時a是 False值,所以不管c是True 還是Flase,a or c的結果就是c!!!捋通邏輯的話,a and b or c 是不是就是Python下的a ? b : c ! 用法?

1.5 is ,not

is 和 is not 是Python下判斷同一性的關鍵字,通常用來判斷 是 True 、False或者None(Python下的NULL)!

比如 if alue is True : ...

(不記得本節的童鞋罰複習:python 學習筆記 2 -- 判斷語句)

2.函式、模組、類

對於Python的函式及模組主要包括這些關鍵字:

from import as def pass lambda return class 

那麼你還能記得它們麼?下面簡單介紹一下:

2.1 模組

Python的程式設計通常大量使用標準庫中的模組,使用方法就是使用import 、from以及as 關鍵字。

比如: import sys # 匯入sys模組

from sys import argv # 從sys模組中匯入argv ,這個在前面介紹指令碼傳引數時使用到

import cPickle as p # 將cPickle模組匯入並在此將它簡單命名為p,此後直接可以使用p替代cPickle模組原名,這個在介紹檔案輸入輸出時的儲存器中使用到

2.2 函式

Python中定義函式時使用到def關鍵字,如果你當前不想寫入真實的函式操作,可以使用pass關鍵字指代不做任何操作:

def JustAFunction:

pass

當然,在需要給函式返回值時就用到了return關鍵字,這裡簡單提一下Python下的函式返回值可以是多個(接收返回值時用相應數量的變數接收!)!

此外Python下有個神奇的Lambda函式,它允許你定義單行的最小函式,這是從Lisp中借用來的,可以用在任何需要函式的地方。比如:

g = lambda x : x*2 # 定義一個Lambda函式用來計算引數的2倍並返回!

print g(2) # 使用時使用lambda函式返回的變數作為這個函式的函式名,括號中帶入相應引數即可!

(不記得本節的童鞋罰複習:python 學習筆記 4 -- 函式篇)

3.異常

對於Python的異常主要包括這些關鍵字:

try except finally raise 

異常這一節還是比較簡單的,將可能出現的異常放在 try: 後面的語句塊中,使用except關鍵字捕獲一定的異常並在接下來的語句塊中做相應操作,而finally中接的是無論出現什麼異常總在執行最後做finally: 後面的語句塊(比如關閉檔案等必要的操作!)

raise關鍵字是在一定的情況下引發異常,通常結合自定義的異常型別使用。

(不記得本節的童鞋罰複習:python 學習筆記 6 -- 異常處理)

4.其他

上面的三類過後,還剩下這些關鍵字:

print del global with assert yield exec

首先print 在前面的筆記或者任何地方你都能見到,所以還是比較熟悉的,此處就不多介紹了!

del 關鍵字在前面的筆記中已有所涉及,比如刪除列表中的某項,我們使用 “ del mylist[0] ”

可能這些剩下來的關鍵字你比較陌生,所以下面來介紹一下:

4.1.global 關鍵字

當你在函式定義內宣告變數的時候,它們與函式外具有相同名稱的其他變數沒有任何關係,即變數名稱對於函式來說是 區域性 的。這稱為變數的 作用域 。所有變數的作用域是它們被定義的塊,從它們的名稱被定義的那點開始。

eg.

?
1 2 3 4 5 6 7 8 9 10 11 #!/usr/bin/python # Filename: func_local.py def func(x): print'x is', x x = 2 print'Changed local x to', x x = 50 func(x) print

相關推薦

python 字串轉義序列字串格式化操作符關鍵字總結

1.字串轉義序列 轉義字元 描述 \(在行尾時) 續行符 \\ 反斜槓符號 \' 單引號 \" 雙引號 \a 響鈴 \b

笨辦法學python字串轉義序列

\\  轉義反斜槓 \’  轉義單引號 \”  轉義雙引號 \a  響鈴 \b  退一格(Backspace) \f  換頁 \n  換行 \r  回車

Python入門筆記2 序列字串元組列表)

操作字串的方法: a.索引取值   a='abcde'   a[0]、a[1]取a中元素,但一次只可以取一個。   用+號連線,如,a[1]+a[2]。得‘ab’ b.切片 可以從字串中進行擷取 分正負數,正數表示從左往右取,從0開始;負數代表從右往左取,最後一位為-1

Python的如何給一個字串加密

Python中自帶的hashlib模組的功能是給字串進行加密,加密方式有以下幾種: md5、sha1、sh224、sha256、sha384、sha512 常用的是md5和sha1 這裡首先介紹一下sh1的用法: 步驟如下: 1、匯入sha1 2、生成sha1物件 3、sh

有趣的小案例,如何在python生成所有可能的字串

  我的目標是能夠生成長度為x的所有可能的字串(字母和數字),並且能夠啟用每個字串的程式碼塊. (像迭代器一樣)唯一的問題是itertools中的那些不會在同一個字串中複製字母.例如: 我得到“ABC”“BAC”“CAB”等而不是“AAA”. 有什麼建議? 使用&

Python時間戳與時間字串互相轉化

#設a為字串 import time a = "2011-09-28 10:00:00" #中間過程,一般都需要將字串轉化為時間陣列 time.strptime(a,'%Y-%m-%d %H:%M:%S') >>time.struct_time(tm_year

c語言轉義序列

不同的 必須 序列 函數 光標 語言 斜杠 int 結果 c中的輸出函數printf()可以帶以下的轉義序列,不同的轉義序列會得到不同的結果。 1、\a:警報 2、\b:退格(光標回退一格)3、\f:換頁4、\n:換行(光標去到下一行的起始處)5、\r:回車(光標回到本行的

Python 的網絡編程-socket模塊創建TCP服務器創建TCP客戶端

src strong lin nec 並發 變量 通過 參數 round Python 中的網絡編程 一、socket()模塊 二、創建TC

python閒談----關於Python列表的賦值與拷貝(淺拷貝深拷貝)操作

列表作為python中最重要也是最基礎的序列,以其簡單方便的操作被廣泛應用,但在引用列表時也要注意一些小坑,這裡討論一下關於列表賦值的操作。 《Fluent Python》的作者Luciano Ramalho將序列按照記憶體模型分為容器序列和扁平序列

python轉義字元

Python轉義字元 在需要在字元中使用特殊字元時,python用反斜槓(\)轉義字元。如下表: 轉義字元 描述 \(在行尾時) 續行符 \\ 反斜槓符號 \' 單引號 \" 雙引號 \a 響鈴 \b

Python的檔案IO操作(讀寫檔案追加檔案)

【注】:下述操作過程是結合多種網路方法,然後自己實踐的結果。寫在這裡,主要目的是加深記憶,也希望能幫助後來者 Python中檔案的讀寫包含三個步驟:開啟檔案,讀/寫檔案,關閉檔案。 檔案開啟之後必

python如何用序列(list())轉化為矩陣(int())

今天練習寫python程式碼時,遇到一個有趣的寫法: def relu_fun(x): x[x<0]=0 return x 結合上下文發現x是矩陣,猜測函式功能是根據x的值若小於0,則對應位的x就置為0,否則直接返回原來x的值。

python處理列表序列等的幾個關鍵詞

1 insert insert() 函式用於將指定物件插入列表的指定位置。 eq; >>> list = [1,2,3,4,5,6] >>> list.insert(0,0) >>> list [0

Python如何迭代(遍歷)listdict

本篇部落格介紹Python中list、dict的迭代方法(遍歷方法),即在for迴圈中使用list、dict的方法。 1. list的迭代 1.1 普通迭代 #!/usr/bin/env python def test_list(): number

python 轉義字元

 1:轉義字元不生效print(r'python \n') out: python \n print('python \n') out: python(後面有換行)2:\n(換行)和\r(回車)的區別\n :換到下一行\r:回到當前行開頭3:轉義字元表轉義字元描述\(在行尾

介紹Python6個序列的內建型別

開發十年,就只剩下這套架構體系了! >>>   

python函式查詢數學和比較操作符二元操作符

http://www.runoob.com/python/func-number-round.html print()、input()使用者輸入輸出,格式為字串 len() 求字串的長度 str()、int()、float()將輸入轉換成指定格式 round()返回浮點數的四捨五入值 range(開

Python 的黑暗角落(一):理解 yield 關鍵字

Python 是非常靈活的語言,其中 yield 關鍵字是普遍容易困惑的概念。 此篇將介紹 yield 關鍵字,及其相關的概念。 迭代、可迭代、迭代器 迭代(iteration)與可迭代(iterable) 迭代是一種操作;可迭代是物件的一種特性。 很多資料

python字串:宣告編碼函式格式化

字串的宣告有三種方式:單引號、雙引號和三引號(包括三個單引號或三個雙引號)。例如: ? 1 2 3 4 5 6 7 8 9 10 11 12 >>> str1= 'hello world'  >>> str2= "hello

Python轉義字元字串格式化字串內建函式

轉義字元     描述\(行尾)         續行符 \\                 反斜槓符號 \'                 單引號 \"                 雙引號 \a                 響鈴 \b