檔案開頭:
1
2
3
<code>#!/usr/bin/env python</code>
<code># -*- coding:utf-8 -*-</code>
<code>#上面一行适用于3以前的版本</code>
當行注釋:# 注釋
多行注釋:""" 注釋 """ 或 '''注釋'''
輸入密碼:
<code>import</code> <code>getpass</code>
<code>pwd </code><code>=</code> <code>getpass.getpass(</code><code>"請輸入密碼:"</code><code>)</code>
子產品查找路徑:
<code>import</code> <code>sysprint(sys.path)</code><code>#['', 'D:\\Program Files\\Python35\\python35.zip', ...</code>
<code>#空格代表與執行檔案同一目錄,非目前路徑</code>
<code>#但在Python的指令行模式下,則代表目前路徑</code>
指令行參數:
<code>import</code> <code>sys</code>
<code>print</code><code>(sys.argv)</code>
Python指令行模式下自動補全功能(linux):
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<code>#!/usr/bin/env python </code>
<code># python startup file </code>
<code>import</code> <code>readline</code>
<code>import</code> <code>rlcompleter</code>
<code>import</code> <code>atexit</code>
<code>import</code> <code>os</code>
<code># tab completion </code>
<code>readline.parse_and_bind(</code><code>'tab: complete'</code><code>)</code>
<code># history file </code>
<code>histfile </code><code>=</code> <code>os.path.join(os.environ[</code><code>'HOME'</code><code>], </code><code>'.pythonhistory'</code><code>)</code>
<code>try</code><code>:</code>
<code> </code><code>readline.read_history_file(histfile)</code>
<code>except</code> <code>IOError:</code>
<code> </code><code>pass</code>
<code>atexit.register(readline.write_history_file, histfile)</code>
<code>del</code> <code>os, histfile, readline, rlcompleter</code>
定義子程式:
Python用def,perl用sub,JavaScript用function。别再搞錯了,你這個sb
清單切片:
<code>>>> num </code><code>=</code> <code>[</code><code>0</code><code>,</code><code>1</code><code>,</code><code>2</code><code>,</code><code>3</code><code>,</code><code>4</code><code>,</code><code>5</code><code>]</code>
<code>>>> num[</code><code>1</code><code>:</code><code>4</code><code>] </code><code>#取下表1~3的值,</code>
<code>[</code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>]</code>
<code>>>> num[</code><code>1</code><code>:</code><code>-</code><code>1</code><code>] </code><code>#取下标1至-1的值,不包括-1</code>
<code>[</code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>]</code>
<code>>>> num[</code><code>0</code><code>:</code><code>3</code><code>] </code>
<code>[</code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>]</code>
<code>>>> num[:</code><code>3</code><code>] </code><code>#0可以省略</code>
<code>>>> num[::</code><code>2</code><code>] </code><code>#第三個參數代表步長</code>
<code>[</code><code>0</code><code>, </code><code>2</code><code>, </code><code>4</code><code>]</code>
追加與插入:
<code>>>> num.append(</code><code>6</code><code>)</code>
<code>>>> num</code>
<code>[</code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>, </code><code>6</code><code>]</code>
<code>>>> num.insert(</code><code>0</code><code>,</code><code>-</code><code>1</code><code>) </code><code>#第一個參數表示插入元素的下标</code>
<code>[</code><code>-</code><code>1</code><code>, </code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>, </code><code>6</code><code>]</code>
清單合并:
<code>>>> alpha </code><code>=</code> <code>[</code><code>'a'</code><code>,</code><code>'b'</code><code>,</code><code>'c'</code><code>,</code><code>'d'</code><code>]</code>
<code>>>> alpha.extend(num)</code>
<code>>>> alpha</code>
<code>[</code><code>'a'</code><code>, </code><code>'b'</code><code>, </code><code>'c'</code><code>, </code><code>'d'</code><code>, </code><code>-</code><code>1</code><code>, </code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>, </code><code>6</code><code>]</code>
删除與批量删除:
<code>>>> alpha.remove(</code><code>'c'</code><code>)</code>
<code>[</code><code>'a'</code><code>, </code><code>'b'</code><code>, </code><code>'d'</code><code>, </code><code>-</code><code>1</code><code>, </code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>, </code><code>6</code><code>]</code>
<code>>>> alpha.pop() </code><code>#remove and return item at index (default last).可帶參數,指定要删除元素的下标</code>
<code>6</code>
<code>[</code><code>'a'</code><code>, </code><code>'b'</code><code>, </code><code>'d'</code><code>, </code><code>-</code><code>1</code><code>, </code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>]</code>
<code>>>> </code><code>del</code> <code>alpha[</code><code>1</code><code>:</code><code>4</code><code>]</code>
<code>[</code><code>'a'</code><code>, </code><code>0</code><code>, </code><code>1</code><code>, </code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>, </code><code>5</code><code>]</code>
淺拷貝:
<code>>>> list1 </code><code>=</code> <code>[</code><code>0</code><code>,</code><code>1</code><code>,[</code><code>2</code><code>,</code><code>3</code><code>,</code><code>4</code><code>],</code><code>5</code><code>,</code><code>6</code><code>]</code>
<code>>>> list2 </code><code>=</code> <code>list1.copy()</code>
<code>>>> list2</code>
<code>[</code><code>0</code><code>, </code><code>1</code><code>, [</code><code>2</code><code>, </code><code>3</code><code>, </code><code>4</code><code>], </code><code>5</code><code>, </code><code>6</code><code>]</code>
<code>>>> list1[</code><code>2</code><code>][</code><code>2</code><code>]</code><code>=</code><code>3</code>
<code>[</code><code>0</code><code>, </code><code>1</code><code>, [</code><code>2</code><code>, </code><code>3</code><code>, </code><code>3</code><code>], </code><code>5</code><code>, </code><code>6</code><code>]</code>
深拷貝:
<code>import</code> <code>copy</code>
<code>>>> list3 </code><code>=</code> <code>copy.deepcopy(list1)</code>
<code>>>> list1[</code><code>2</code><code>][</code><code>2</code><code>]</code><code>=</code><code>4</code>
<code>>>> list3</code>
<code>>>> list1</code>
擷取下标:
<code>[</code><code>5</code><code>, </code><code>4</code><code>, </code><code>3</code><code>, </code><code>2</code><code>, </code><code>1</code><code>, </code><code>0</code><code>, </code><code>'b'</code><code>, </code><code>'a'</code><code>]</code>
<code>>>> alpha.index(</code><code>'b'</code><code>)</code>
<code>>>> alpha.index(</code><code>'d'</code><code>)</code>
<code>Traceback (most recent call last):</code>
<code> </code><code>File</code> <code>"<stdin>"</code><code>, line </code><code>1</code><code>, </code><code>in</code> <code><module></code>
<code>ValueError: </code><code>'d'</code> <code>is</code> <code>not</code> <code>in</code> <code>list</code>
統計數量:
<code>>>></code>
<code>>>> list3.count(</code><code>1</code><code>)</code>
<code>1</code>
<code>>>> list3.count(</code><code>3</code><code>)</code>
<code>0</code>
排序、翻轉、清空:
18
19
20
21
22
<code>>>> alpha.sort() </code><code>#排序隻能是純數字或字元串,不同類型無法排序</code>
<code>TypeError: unorderable types: </code><code>str</code><code>() < </code><code>int</code><code>()</code>
<code>>>> a2 </code><code>=</code> <code>[</code><code>'2'</code><code>,</code><code>'1'</code><code>]</code>
<code>>>> a2.sort()</code>
<code>>>> a2</code>
<code>[</code><code>'1'</code><code>, </code><code>'2'</code><code>]</code>
<code>>>> a3 </code><code>=</code> <code>[</code><code>'b'</code><code>,</code><code>'d'</code><code>,</code><code>'a'</code><code>,</code><code>'c'</code><code>]</code>
<code>>>> a3.sort()</code>
<code>>>> a3</code>
<code>[</code><code>'a'</code><code>, </code><code>'b'</code><code>, </code><code>'c'</code><code>, </code><code>'d'</code><code>]</code>
<code>>>> alpha.reverse()</code>
<code>>>> list1.clear()</code>
<code>[]</code>
元組(tuple):
tuple.count()
tuple.index()
字元串:
大部分操作同數組。
去除首尾space字元:
<code>>>> s </code><code>=</code> <code>" sdfjlsjdflks "</code>
<code>>>> s</code>
<code>' sdfjlsjdflks '</code>
<code>>>> s.strip()</code>
<code>'sdfjlsjdflks'</code>
<code>' sdfjlsjdflks '</code> <code>#strip不會改變原字元串,隻會傳回去除space後的字元串</code>
左右填充與居中填充:
<code>>>> s </code><code>=</code> <code>"hello,world"</code>
<code>>>> s.ljust(</code><code>40</code><code>,</code><code>"#"</code><code>)</code>
<code>'hello,world#############################'</code>
<code>>>> s.rjust(</code><code>40</code><code>,</code><code>"#"</code><code>)</code>
<code>'#############################hello,world'</code>
<code>>>> s.center(</code><code>40</code><code>,</code><code>"#"</code><code>)</code>
<code>'##############hello,world###############'</code>
翻譯:
<code>>>> s </code><code>=</code> <code>"Hello World!"</code>
<code>>>> p </code><code>=</code> <code>str</code><code>.maketrans(</code><code>"abcdefg"</code><code>,</code><code>"3!@#$%^"</code><code>)</code>
<code>>>> s.translate(p)</code>
<code>'H$llo Worl</code><code>#!</code>
字典:
<code>>>> dic1 </code><code>=</code> <code>{</code><code>'no1'</code><code>:</code><code>12</code><code>,</code><code>'no2'</code><code>:</code><code>13</code><code>,</code><code>'no3'</code><code>:</code><code>11</code><code>}</code>
<code>>>> dic1</code>
<code>{</code><code>'no1'</code><code>: </code><code>12</code><code>, </code><code>'no2'</code><code>: </code><code>13</code><code>, </code><code>'no3'</code><code>: </code><code>11</code><code>}</code>
<code>>>> dic1.pop(</code><code>'no1'</code><code>)</code>
<code>12</code>
<code>{</code><code>'no2'</code><code>: </code><code>13</code><code>, </code><code>'no3'</code><code>: </code><code>11</code><code>}</code>
<code>>>> </code><code>del</code> <code>dic1[</code><code>'no2'</code><code>]</code>
<code>{</code><code>'no3'</code><code>: </code><code>11</code><code>}</code>
<code>>>> dic1[</code><code>'no4'</code><code>] </code><code>=</code> <code>33</code>
<code>{</code><code>'no4'</code><code>: </code><code>33</code><code>, </code><code>'no3'</code><code>: </code><code>11</code><code>}</code>
<code>>>> dic1.popitem() </code><code>#随機删除</code>
<code>(</code><code>'no4'</code><code>, </code><code>33</code><code>)</code>
擷取和查找:
<code>>>> dic </code><code>=</code> <code>{</code><code>"zs"</code><code>:</code><code>33</code><code>,</code><code>"ls"</code><code>:</code><code>45</code><code>,</code><code>"ww"</code><code>:</code><code>56</code><code>,</code><code>"zl"</code><code>:</code><code>90</code><code>}</code>
<code>>>> dic[</code><code>'dd'</code><code>]</code>
<code>KeyError: </code><code>'dd'</code>
<code>>>> dic.get(</code><code>'dd'</code><code>) </code><code>#避免報錯</code>
<code>>>> </code><code>'ls'</code> <code>in</code> <code>dic </code><code>#判斷字典裡是否有某個鍵,用in</code>
<code>True</code>
擷取keys和values清單:
<code>>>> dic.values()</code>
<code>dict_values([</code><code>45</code><code>, </code><code>33</code><code>, </code><code>56</code><code>, </code><code>90</code><code>])</code>
<code>>>> dic.keys()</code>
<code>dict_keys([</code><code>'ls'</code><code>, </code><code>'zs'</code><code>, </code><code>'ww'</code><code>, </code><code>'zl'</code><code>])</code>
update:
<code>>>> dic</code>
<code>{</code><code>'ls'</code><code>: </code><code>45</code><code>, </code><code>'zs'</code><code>: </code><code>33</code><code>, </code><code>'ww'</code><code>: </code><code>56</code><code>, </code><code>'zl'</code><code>: </code><code>90</code><code>}</code>
<code>>>> dic2</code>
<code>{</code><code>'zs'</code><code>: </code><code>33</code><code>, </code><code>'kk'</code><code>: </code><code>99</code><code>, </code><code>'ls'</code><code>: </code><code>33</code><code>, </code><code>'ww'</code><code>: </code><code>44</code><code>, </code><code>'zl'</code><code>: </code><code>90</code><code>}</code>
<code>>>> dic.update(dic2)</code>
<code>{</code><code>'kk'</code><code>: </code><code>99</code><code>, </code><code>'zl'</code><code>: </code><code>90</code><code>, </code><code>'ls'</code><code>: </code><code>33</code><code>, </code><code>'zs'</code><code>: </code><code>33</code><code>, </code><code>'ww'</code><code>: </code><code>44</code><code>}</code>
周遊:
<code>#方法1</code>
<code>for</code> <code>key </code><code>in</code> <code>info:</code>
<code> </code><code>print</code><code>(key,info[key])</code>
<code> </code>
<code>#方法2</code>
<code>for</code> <code>k,v </code><code>in</code> <code>info.items(): </code><code>#會先把dict轉成list,資料裡大時莫用</code>
<code> </code><code>print</code><code>(k,v)</code>
集合
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<code>s </code><code>=</code> <code>set</code><code>([</code><code>3</code><code>,</code><code>5</code><code>,</code><code>9</code><code>,</code><code>10</code><code>]) </code><code>#建立一個數值集合 </code>
<code>t </code><code>=</code> <code>set</code><code>(</code><code>"Hello"</code><code>) </code><code>#建立一個唯一字元的集合 </code>
<code>a </code><code>=</code> <code>t | s </code><code># t 和 s的并集 </code>
<code>b </code><code>=</code> <code>t & s </code><code># t 和 s的交集 </code>
<code>c </code><code>=</code> <code>t – s </code><code># 求差集(項在t中,但不在s中) </code>
<code>d </code><code>=</code> <code>t ^ s </code><code># 對稱差集(項在t或s中,但不會同時出現在二者中) </code>
<code> </code>
<code> </code>
<code>基本操作: </code>
<code>t.add(</code><code>'x'</code><code>) </code><code># 添加一項 </code>
<code>s.update([</code><code>10</code><code>,</code><code>37</code><code>,</code><code>42</code><code>]) </code><code># 在s中添加多項 </code>
<code>使用remove()可以删除一項: </code>
<code>t.remove(</code><code>'H'</code><code>) </code>
<code>len</code><code>(s) </code>
<code>set</code> <code>的長度 </code>
<code>x </code><code>in</code> <code>s </code>
<code>測試 x 是否是 s 的成員 </code>
<code>x </code><code>not</code> <code>in</code> <code>s </code>
<code>測試 x 是否不是 s 的成員 </code>
<code>s.issubset(t) </code>
<code>s <</code><code>=</code> <code>t </code>
<code>測試是否 s 中的每一個元素都在 t 中 </code>
<code>s.issuperset(t) </code>
<code>s ></code><code>=</code> <code>t </code>
<code>測試是否 t 中的每一個元素都在 s 中 </code>
<code>s.union(t) </code>
<code>s | t </code>
<code>傳回一個新的 </code><code>set</code> <code>包含 s 和 t 中的每一個元素 </code>
<code>s.intersection(t) </code>
<code>s & t </code>
<code>傳回一個新的 </code><code>set</code> <code>包含 s 和 t 中的公共元素 </code>
<code>s.difference(t) </code>
<code>s </code><code>-</code> <code>t </code>
<code>傳回一個新的 </code><code>set</code> <code>包含 s 中有但是 t 中沒有的元素 </code>
<code>s.symmetric_difference(t) </code>
<code>s ^ t </code>
<code>傳回一個新的 </code><code>set</code> <code>包含 s 和 t 中不重複的元素 </code>
<code>s.copy() </code>
<code>傳回 </code><code>set</code> <code>“s”的一個淺複制</code>
檔案操作:
打開與打開模式:
F=open('path/file','r') 隻讀
F=open('path/file','w') 隻寫,存在則清空,不存在則建立
F=open('path/file','x') 3.0版本,隻寫,檔案存在則報錯,不存在則建立
F=open('path/file','a') 追加
其他模式:
指定編碼:
讀取:
mfile.read(n) #預設讀取字元,在‘b’模式下,按位元組讀取。
本文轉自 d185740815 51CTO部落格,原文連結:http://blog.51cto.com/luotaoyang/1868221,如需轉載請自行聯系原作者