宣告:有些**是從大牛部落格直接複製的,已經註明了鏈結。
1 安裝
future 特殊
u'c:\n' ascii 8位 unicode 16位
2 列表和元組
''.join(somelist),somelist必須是字串序列
pop 去除列表最後乙個元素 pop(0) 去除第乙個
x.reverse() list(reversed(x))
y=x[:](deep copy)
list.sort(),list.sort(cmp) 在python3.x中取消了cmp引數,也不支援直接往sort()裡面傳函式了。可以構造排序函式傳遞給key來實現
numbers.sort(cmp=cmp)
#python裡方法sort()中cmp引數的用法
sorted(x).reverse()
list.sort(reverse=true)
persons.sort(lambda a,b:a['age']-b['age'])
後進先出
stack=[12,45,67,56,89,23,54]
def popit(num):
jieguo=
while true:
if len(num)==0:
break
else:
tmp=stack.pop()
print(jieguo)
popit(stack)
先進先出(fifo)的佇列(queue)
tmp=stack.pop() 換成 tmp=stack.pop(0) 或者insert(0,..)
或者collection模組的deque物件
import collections
import threading
import time
candle = collections.deque(xrange(5))
def burn(direction, nextsource):
while true:
try:
next = nextsource()
except indexerror:
break
else:
print '%8s: %s' % (direction, next)
time.sleep(0.1)
print '%8s done' % direction
return
left = threading.thread(target=burn, args=('left', candle.popleft))
right = threading.thread(target=burn, args=('right', candle.pop))
left.start()
right.start()
left.join()
right.join()
deque的缺點就是remove還有判斷獲取索引的時候,速度有些慢, 因為他需要執行多遍deque相關聯的資料塊 。不像list那樣,搞一遍就行
from collections import deque
import profile,stat
import sys
import time
t0 = time.clock()
print t0
qeque=deque()
def add1(data):
def add2():
qeque.pop()
big_n=1000000
def seq():
for i in range(big_n):
add1(i)
for i in range(big_n/2):
add2()
for i in range(big_n):
add1(i)
l=def add3(data):
def data4():
l.pop(-1)
def lse():
for i in range(big_n):
add3(i)
for i in range(big_n/2):
data4()
for i in range(big_n):
add3(i)
seq()
print deque
print 'queue', time.clock() - t0
3 使用字串
使用元組
字串格式化轉換型別
python基礎教程共60課 第24課if的巢狀
python基礎教程共60課 第24課if的巢狀 python 第24課 if的巢狀 和for迴圈一樣,if也可以巢狀使用,即在乙個if elif else的內部,再使用if。這有點類似於電路的串聯。if 條件1 if 條件2 語句1else 語句2else if 條件2 語句3else 語句4在上...
python基礎教程
乙個簡單的客戶機 import socket s socket.socket host socket.gethostname port 1234 s.bind host,port s.listen 5 while true c,addr s.accept print got connection f...
Python基礎教程
本教程不包括python的安裝,ide採用spyder pytho2.7 1.print pow 2,3 8 print 2 3 8這裡pow函式表示乘方,與 功能相同。2.abs 10 10abs函式用來求乙個數的絕對值。3.round 0.6 1.0 round 0.4 0.0round函式將浮...