Python大全

常用的数学模块sqrt,cos,sin 在math模块中

**乘方

字符串

ord函数返回字符的ASCII码整数

用双引号或单引号表示字符串(不可修改)

三个连续单引号表示多行字符串

*复制 +连接

[start:end:step]切片

in :某个元素是否存在

range函数返回range类型的对象,可以直接当做序列用,也可以转换为list或者tuple等容器类型

  1. tuple(range(10))
  2. (0,1,2,3,4,5,6,7,8,9)

split: 分割 返回list ;join: 合并 返回字符

  1. >>> '-'.join(['one',a,'two'])
  2. 'one-acs-two'
  3. >>> 'You are my sunshine.'.split(' ')
  4. ['You', 'are', 'my', 'sunshine.']
  5. >>>

输入输出

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

控制流语句

  1. if a>10:
  2. print('great')
  3. elif a>6:
  4. print('middle')
  5. else:
  6. print('low')

推导式


如果是()则是生成器对象

  1. def func(*args):#不带key的多个参数
  2. def func(**kwargs):#key=val形式的多个参数

运行时间检测

  1. import time
  2. start=time.time()
  3. #执行函数
  4. end=time.time()
  5. print(end-start)

数据类型

  1. class Stack:
  2. def __init__(self):
  3. self.items = []
  4. def isEmpty(self):
  5. return self.items == []
  6. def push(self, item):
  7. self.items.append(item)
  8. def pop(self):
  9. return self.items.pop()
  10. def peek(self):
  11. return self.items[len(self.items)-1]
  12. def size(self):
  13. return len(self.

队列Queue

  1. class Queue:
  2. def __init__(self):
  3. self.items = []
  4. def isEmpty(self):
  5. return self.items == []
  6. def enqueue(self, item):
  7. self.items.insert(0,item)
  8. def dequeue(self):
  9. return self.items.pop()
  10. def size(self):
  11. return len(self.items)

双端队列Deque

  1. class Deque:
  2. def __init__(self):
  3. self.items = []
  4. def isEmpty(self):
  5. return self.items == []
  6. def addFront(self, item):
  7. self.items.append(item)
  8. def addRear(self, item):
  9. self.items.insert(0,item)
  10. def removeFront(self):
  11. return self.items.pop()
  12. def removeRear(self):
  13. return self.items.pop(0)
  14. def size(self):
  15. return len(self.items)

散列

python 散列函数库 hashlib

包括了md5/sha1/sha224/sha256/sha384/sha512等6种散列函数

update 方法对任意长的数据分部分来计算

  1. import hashlib
  2. m=hashlib.md5()
  3. string0="hello world!"
  4. string1="this is part #2"
  5. string2="this is part #3"
  6. m.update(string0.encode('utf-8'))
  7. m.update(string1.encode('utf-8'))
  8. m.update(string2.encode('utf-8'))
  9. print(m.hexdigest())
  10. >>>a12edc8332947a3e02e5668c6484b93a
坑点:一定要utf-8,不然默认的Unicode不能使用hash