Python大全
常用的数学模块sqrt,cos,sin 在math模块中
**乘方
字符串
ord函数返回字符的ASCII码整数
用双引号或单引号表示字符串(不可修改)
三个连续单引号表示多行字符串
*复制 +连接
[start:end:step]切片
in :某个元素是否存在
range函数返回range类型的对象,可以直接当做序列用,也可以转换为list或者tuple等容器类型
tuple(range(10))
(0,1,2,3,4,5,6,7,8,9)
split: 分割 返回list ;join: 合并 返回字符
>>> '-'.join(['one',a,'two'])
'one-acs-two'
>>> 'You are my sunshine.'.split(' ')
['You', 'are', 'my', 'sunshine.']
>>>
输入输出
input() 以字符串形式返回
print(1,2,end='',sep=',') 参数end='\n’,缺省为换行,表示打印后以这个字符串结尾,参数sep=' ',缺省是空格,表示变量之间用什么字符串隔开
格式化字符串
'%d %s' % (v1, v2)
赋值语句
级联赋值 x=y=z=1
多个变量分解赋值 a,b=['hello','world']
变量交换 a,b=b,a
自操作 i+=1 n*=45
控制流语句
if a>10:
print('great')
elif a>6:
print('middle')
else:
print('low')
推导式
如果是()则是生成器对象
def func(*args):#不带key的多个参数
def func(**kwargs):#key=val形式的多个参数
运行时间检测
import time
start=time.time()
#执行函数
end=time.time()
print(end-start)
数据类型
栈
class Stack:
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def push(self, item):
self.items.append(item)
def pop(self):
return self.items.pop()
def peek(self):
return self.items[len(self.items)-1]
def size(self):
return len(self.
队列Queue
class Queue:
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def enqueue(self, item):
self.items.insert(0,item)
def dequeue(self):
return self.items.pop()
def size(self):
return len(self.items)
双端队列Deque
class Deque:
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def addFront(self, item):
self.items.append(item)
def addRear(self, item):
self.items.insert(0,item)
def removeFront(self):
return self.items.pop()
def removeRear(self):
return self.items.pop(0)
def size(self):
return len(self.items)
散列
python 散列函数库 hashlib
包括了md5/sha1/sha224/sha256/sha384/sha512等6种散列函数
update 方法对任意长的数据分部分来计算
import hashlib
m=hashlib.md5()
string0="hello world!"
string1="this is part #2"
string2="this is part #3"
m.update(string0.encode('utf-8'))
m.update(string1.encode('utf-8'))
m.update(string2.encode('utf-8'))
print(m.hexdigest())
>>>a12edc8332947a3e02e5668c6484b93a
坑点:一定要utf-8,不然默认的Unicode不能使用hash