Python小笔记
a=(3 if 5>7 else 4) #三元判断符
4//3 #取整
4%3 #取余
pow(num1,num2,mod) #幂取余
math. floor(num) #地板符
round(flt,ndig=0) #四舍五入
hex(num) #转16进制
oct(num) #转8进制
bin(num) #转二进制
bs="%(name)s, %(age)d" %{'name':'David','age':31} #字符串格式化操作 查阅字符串格式化代码
print(r'sdsadafa \n') #原意输出,不进行转义符操作
print(R'sdsadafa \n') #原意输出,不进行转义符操作
unicodestr=U'学习python' #把字符转化为unicode编码
unicodestr.encode('utf-8') # Unicide 三明治 :decode, process, encode
#bytes 和 bytearray
#列表部分
list[::-1] #列表的倒序
# + 或 extend 连接俩个列表
# *重复操作
# "in" 或 "not in " 成员测试
# len() max() min()
方法 | 描述 |
---|---|
append(x) | 添加元素 |
count(x) | 返回x出现的个数 |
extend(L) | 添加列表L |
index(x) | 返回列表中x第一个出现的位置 |
insert(i,x) | 在列表第i位置后插入对象x |
pop(x) | 删除索引为x的位置,并返回该位置的值 |
remove(x) | 删除列表中x的第一个元素,产生异常时返回None |
reverse() | 颠倒元素位置 |
sort() | 排序列表 |
[x*2 for x in [1,2,3,4,]] #解析构造
for x in map(hex,[1,2,3,4,5]): print(x)#map(funtion,sequence) 映射
from functools import reduce
reduce(add,[1,2,3,4,5]) #reduce实现列表的累加
def foo(x):
return('love' in x)
filter(foo ,['love'.'here','i'])
# filter(funtion or None,sequence) 实现过滤
#tuple 用于保护数据结构
a=('a')#tuple 陷阱
a=('a',)
#dict字典
dict=dict{zip(['a',b],[1,2])} #zip辅助组建字典
del dict['a'] #删除字典元素
dict.clear() #清除所有元素
dict.copy() #浅拷贝
dict.get(key) #获取键对应的值,无则返回None
dict.item() #返回字典键值的元组
dict.key() #返回字典键的列表
dict.setdefault(key,default=None) #设置键key的默认值
dict.update(dict2) #更新dict2到dict
dict.values() #返回字典的值得列表
dict.fromkeys(seq,val=None) #创建一个新字典,并取seq的键,并设置初始值
e=enumerate(dict)
next(e) # 迭代字典
dict3={x:x%2==0 for x in range(0,10)} #字典解析
#集合
set() #空集合
{1,2,3,4}
#可变集合set 不可变集合frozenset
(a,b,c,d,f,e)=range(5)
s=d=f=g=h=3
a,b=b,a #交换变量
id()
sys.getrefcount(a) #查看应用计数,计数归0,内存回收
'''浅拷贝与深拷贝
copy中copy.deepcopy(L),深拷贝可以避免子列表变化的影响。
''''
#函数可以返回多个值(元组),没有返回值返回None
#函数参数匹配参数匹配,
#位置匹配,
#顺序匹配
#可变参数 tuple 或 dict
#默认参数必须在飞默认参数之后
#单个函数中,只能使用一个tuple参数(*arg)和一个字典参数(**arg)
#tuple参数必须在位置参数和默认参数之后
#字典参数必须在最后定义
#python函数支持重载
#lambda匿名函数 不能塞太多东西
lambda [arg[]]
y = lambda x,y:x+y
#内嵌函数 只能在函数内部调用,除了在函数体内,任何地方也不能调用,除非你将内部函数作为对象返回给了其他变量
'''模块提供了一种逻辑的方式来组织代码,模块就是一个文件,模块名.py,模块名称不能是保留字''''
from module import name as qq
sys.path.append(模块路径)