python的for和内置函数运用
补充
0,None,空字符,空列表,空字典等内容为空的数据布尔值为False
其他数据的布尔值为True
for循环的运用
for循环经常运用于循环取值方面 语法:for 变量名 in 可迭代对象: 代码 eg: res=“hello world” for i in res: print(i) # 逐行将res中的字符输出包括空格
''' for循环列表,输出列表元素 for循环字典,只能输出K,无法输出完整键值对 for只能用于容器类型,也可用于字符串 容器类型:可以存放多个元素的类型,例如:列表,元组 ''' 补充: range函数:输出一个整数数列 range(2,101) # 输出 0 到 100 的数列,大小间隔默认1 range(101) # 输出0到100的数列 range(0,250,25) # 输出逐行0到250,大小间隔为25 eg: for i in range(0,250,25) print(i)
数据内置转换
整形
int() ''' 把数据类型转换为整数 但是无法转换小数型字符和字母 ''' hex() # 转化为十六进制 bin() # 转化为二进制 oct() #转化为八进制 int('二进制数',2) # 把二进制数转化为十进制 int('八进制数',8) # 把八进制数转化为十进制 int('十六进制数',16) # 把十六进制数转化为十进制 ''' 数字前缀有0b是二进制数,有0o是八进制数,有0x是十六进制数 '''
浮点型
float() # 将数据类型转化为小数 ''' float函数可以转化,整数,整数型字符和小数型字符 但无法转化字母字符 '''
字符串
str() # 许多数据都可转化字符串 len() # 用于输出字符个数 eg: len('hello world') # 输出11 res='hello world' res[0] # 输出为h res[1:7] # 输出为ello w res[1:8:2] # 输出为el o,间隔为2
字符串删除 strip函数,去除字符串的元素 rstrip函数,去除字符串右边的元素 lstrip函数,去除字符串左边的元素 eg: name='$$ja$$' name.strip('$') # 输出为ja name.rstrip('$') # 输出为$$ja name.lstrip('$') # 输出为ja$$ 字符串切割 split在特定位置切割字符串,输出列表 eg: data= 'jjj|111|ttt ' print(data.split('|')) # 将‘|’去掉,输出['jjj', '111', 'ttt '] print(data.split('|',maxsplit=1))
''' maxsplit是最大切割输的 '''
大小写转换 res.upper() # 转大写 res.lower() # 转小写 # 判断字符串是否为大写,是大写输出True,否则为False res.isupper # 判断字符串是否为小写,是小写输出True,否则为False res.islower 判断字符串书否为纯数字 isdigit(): 判断字符是否为纯数字,是输出True,否输出False eg: print('123',isdigit()) # True print('jason123',isdigit()) # False 统计字符出现次数 count统计字符串元素出现的次数 eg: res='asfsfnnajdf' print(res.count('f')) # 输出为3 替换 replace,把字符串中的元素替换 语法: 字符变量.replace(替换目标,替换的元素,替换次数) 替换的规则从左往右 eg: res='asfsfnnajdf' print(res.replace('f','d',2)) # 输出为asdsdnnajdf 拼接 join()将指定字符拼接到字符串中 l=['jj','123','read'] print('|'.join(l)) # 输出 jason|123|read
列表
List():将数据转换为列表形式,但只能转支持for循环数据类型 语法: list[起始位,结束位,间隔数]输出起始位和结束位数列,但不包括结束位,间隔数用于确定元素的间隔大小 l1=[11,22,33,44] print(len(l1)) # 输出为4 print(l1[0:4]) # 输出[11,22,33,44] print(l1[0:4:2]) # 输出[11,33] 添加元素 append():可以插入列表或字符,在尾部追加 eg: l1=[11,22,33,44] l1.append('jason') # 在后端插入 print(l1) # 输出[11,22,33,44,'jason'] 在指定位置插入元素 l1.insert(0,'jason') # 输出['jason',11,22,33,44] 列表合并 l1.extend([111,222,333,444]) # 输出[11,22,33,44,111,222,333,444] 删除元素 del l1[0] # 输出结果[22,33,44] l1.remove(22) # 输出[11,33,44] 弹出元素 pop弹出指定元素 res=l1.pop(1) # 弹出l1列表中的索引位为1的元素 print(res) # 输出为22 统计 count函数统计元素个数 l1=[11,22,33,44] l1.count(11) # 输出为1 排序 sort数据进行升序排序 l3=[44,66,55,63,76] l3.sort() # 默认排序为升序 输出为 l3.sort(reverse=True) # 降序
字典
dict1={'username':'jjj','password':111,'hobby':'read'} 键值对个数 len:计算 print(len(dict1)) # 输出3 按键取值 print(dict1['username']) # 输出jjj print(dict1['xxx']) # 键不存在会报错 但是 print(dict1.get('xxx')) # 输出None 不会报错 dict1['username']='jjNB' # username的V改为jjNB dict1['age']=34 # 新增'age':18
删除 dict1.pop['username'] # 弹出username 三个方法(了解) dict1.keys() # 输出K值,把K值输出为列表 dict1.values() # 输出V值,为列表 dict.values() # 输出键值对为列表 (('K1':'V1'),('K2':'V2')....)
集合
去重 集合内不允许出现重复元素 l=[11,22,22,11] l1=set(l) print(l1)# 输出为{11,22} ''' 集合是无序的 ''' 交叉运算
父集,子集
f2集合存在于f1的集合中,则f1是f2的父集,f2是f1的子集
eg:
f1 = {'jason','tony','kevin','jack'}
f2 = {'jason','tony','tom','jerry'}
# 输出共同的元素
print(f1&f2)
# 输出f1有f2没有的
print(f1-f2)
# 输出f1和f2所有的元素
print(f1|f2)
# 输出各自好友
print(f1^f2)
# 判断f1是f2的父集
print(f1>f2)
# 判断f1是f2子集
print(f1<f2)