2018-10-08 python小总结
python的缩进格式很重要
,后面要跟空格
定义常量 只要将名字全部大写即可
/ 除法保留以为小数 //除法,取整
获取变量类型 type()
dir(类) 查询类中方法,属性
getattr(对象,"属性名")获取对象属性
list
list = ["1","2"] 定义数组
list.append() 添加元素(追加)
list.insert(0,"0");
list.pop(0)移除元素;默认删除尾部
list[0]="0"修改元素
boolean = "0" in list 判断元素是否存在
for i in list 遍历数组
map
map = (1:"a",2:"n")定义map
map[1] = "b" 修改1对应的val
map[3] = "c" 新增
map.get(1)返回"b" 查询
map.pop(3) 删除
boolean 3 in map 判断是否存在
for i in map.values() 遍历
set 无序,非空,去重
set = set([1,2,2,3])
set.add(4)新增
set,remove(4)删除
for i in set 遍历
不支持修改
boolean = 2 in set 判断是否存在
tuple元组
一旦初始化就无法修改,有序表
tuple = ("a",[1,2])
for i in tuple 遍历
不支持新增,修改,删除
bool = "a" in tuple 判断是否存在
namedtuple
通过下标获取值,取无法修改的特性
deque
java linkedlist 增删改快,查询慢
OrderedDict
按插入顺序排序的字典
条件
if () :
elif () :
else:
while ():
continue 继续;
break 中断;
面向对象
class 类名(父类)://所有类的父类为object
def init(self,属性...): //构造器
self.属性 = 属性
def func(self): //定义方法
//主函数
if name == 'main':
class = calss(属性) //初始化类
class.func() //调用方法
class 类名(父类):
pass 继承一个类;
//多态,需要父类的参数,子类也可以被使用
file操作
方式:r读w写a追加
读:open(path,”方式“,编码ecoding="ttf-8").read()
for line in open().readlines(): 一行行读
写:file=open(path,方式,编码ecoding="ttf-8")
file.write("")//覆盖写
异常处理
try:
finally:
或者 with open(path,"r") as f:
print(f.read())
date 时间操作
当前时间 now = datatime.now()
格式化时间 formatdate = now.strftime("%y-%m-%d %h:%M:%s")
字符串转时间 time = datatime.strptime("20181008 163600","%y%m%d %h%M%s")
修改时间 now = now + timedelta(hours = 2) //加2小时
计数器 counter
//单词计数
counter = Counter()
str = "hello"
for ch in str:
counter[ch] += 1
网络爬虫组件 urllib
url = "http://baidu.com"
res = urllib.request.urlopen(url)
if res.status == 200:
print("访问成功")
data = res.read().decode("utf-8")
soup = BeautifulSoup(data) //美化