Day2 python笔记

day2

  • int操作方法
# bit_length():返回表示该数字时二进制占用最少位数
>>> age = 12
>>> age.bit_length()
# __abs__():返回绝对值
>>> age = -14
>>> age.__abs__()
>>> abs(-16)
# __add__():相加
>>> age = -19
>>> age__add__(50)
>>> 12 + 4
# __bool__:返回布尔值
>>> age.__bool__()
>>> bool(False)
# __divmod__:返回商和余数
>>> age.__divmod__(4)
>>> divmod(12,5)
# __eq__:比较是否相等
>>> age = 12
>>> age.__eq__(12)
>>> 12 == 12
# __float__:转换成浮点型
>>> age.__float__()
>>> float(12)
# __floordiv__:地板除
>>> age = 5
>>> age.__floordiv(6)
>>> 5//6
# __ge__:大于等于
>>> age = 15
>>> age.__ge__(18)
>>> 15 >= 18
# __gt__:大于
>>> age = 14
>>> age.__gt__(12)
>>> 14 > 12
# __hash__:哈希值
>>> age = 14.5
>>> age.__hash__()
>>> hash(14.5)
# __invert__:位运算
>>> ~12
# __le__:小于等于
>>> age = 14
>>> age.__le__(15)
>>> 14 <= 15
# __lshift__:左位移
>>> age = 14
>>> age.__lshift__(4)
>>> 14 << 4
# __lt__:小于
>>> age = 14
>>> age.__lt__(16)
>>> 14 < 16
# __mod__:余数
>>> age = 9
>>> age.__mod__(8)
>>> 8 % 9
# __mul__:相乘
>>> age = 7
>>> age.__mul__(8)
>>> 7 * 8
# __ne__:不等于
>>> age = 7
>>> age.__ne__(9)
>>> 7 != 9
# __neg__:负数
>>> age = 7
>>> age.__neg__()
>>> -7
  • str操作
# __contains__:相当于in
>>> name = 'kevin'
>>> name.__contains__('vi')
>>> 'ev' in name
# __eq__:相等
>>> 'kevin' == 'kevin'
>>> name.__eq__('kevin')
# __getattribute__:反射时用到
# __getitem__:类的时候会用到
# capitalize:首字母大写
>>> name = 'kevin'
>>> name.capitalize()
# casefold:全部小写
>>> name = 'KEVIN'
>>> name.casefold()
# center:第一个参数为宽度,第二个参数为填充的字符。居中,两边填充,默认填充为‘ ’
>>> name = 'kevin'
>>> name.center(40,'=')
# count:查找字符出现的次数
>>> name = 'wwwjklfdkevinklklkevinkjl'
>>> name.count('kevin') # 在name下查找
>>> name.count('w',4) # 在name下从第四位开始查找
>>> name.count('ke',4,10) # 在name下从第四位开始第十位结束查找
# encode:编码转换
>>> name = '中国'
>>> name.encode('gbk')
# endswith:查找字符的结尾字符
>>> name = 'kevin'
>>> name.endswith('v')
>>> name.endswith('v',0,3)
# expandtabs:把tab转换为空格,默认转换为8个空格
>>> name = 'ke\tvin'
>>> name.expantabs(4)
# find:去字符串里找子序列,返回子序列所在字符串的位置,未找到则会返回-1
>>> name = 'kevin'
>>> name.find('e')
>>> name.finf('v',0,3)
# index:等价于find,未找到则会返回异常
# format:进行字符串拼接
>>> name = 'kevin {0} as {1} to {2}'
>>> name.format('man','23','it')
>>> name = '{name} as {age}'
>>> name.format(name='kevin',age=23)
# isalnum:判断是否是字母或数字
# isalpha:判断是否是字母
# isdecimal:判断是否是十进制小数
# isdigit:判断是否是数字
# isidentifier:判断是否是关键字
# islower:判断是否全部是小写
# isnumeric:判断是否是数字
# isprintable:判断是否可以打印
# isspace:判断是否是空格
# istitle:判断是否首字母是大写
# isupper:判断是否全部是大写
# join:字符串拼接
>>> name = ['k','e','v','i','n']
>>> '_'.join(name)
# ljust:第一个参数为宽度,第二参数为填充的字符。居左
>>> name = 'kevin'
>>> name.ljust(20,'*')
# rjust:第一个参数为宽度,第二个参数为填充字符。居右
>>> name = 'kevin'
>>> name.rjust(20,'*')
# lower:把字符变成小写
>>> name = 'KEVIN'
>>> name.lower()
# strip:去除两边所有的空格,可选参数自定义去掉的字符
>>> name = '   kevin\n  '
>>> name = name.strip() # 去除两边的空格
>>> name.strip('\n') # 去除两边的\n
# lstrip:只去除左边的空格,和strip相同
# rstrip:只去除右边的空格,和strip相同
# partition:把字符串分割成元组
>>> name = 'kevin'
>>> name.partition('v')
# replace:替换
>>> name = 'kevinevkskksdk'
>>> name.replace('e','s') # 第一个参数为需要替换的字符,第二参数为替换为什么字符
>>> name.replace('k','p',3) # 第三个参数为替换几个,从前往后依次替换。
# split:指定字符,分割字符串为列表
>>> name = 'kevin xiaoxiao xiaoge'
>>> name.split() # 默认使用空格进行分割
>>> name.split(' ', 1) # 第一个参数可以自定义,第二个参数确定要分割几份,0为不分割,1 分割为2个 默认参数为-1
# splitlines:根据换行符进行分割
# swapcase:大小写相互转化
# title:把所有字符串的字母的首字母转化为大写
# upper:把所有字符串转化为大写
# zfill:用0填充
>>> name = 'kevin'
>>> name.zfill(10)
  • 列表
# copy:复制
# append:在列表尾部添加元素
>>> li = [1,2,3,4]
>>> li.append('kevin')
# clear: 把列表清空
>>> li = [1,2,3,4]
>>> li.clear()
# count:判断元素出现的次数
>>> li = [1,2,4,5,6,1,23,2,5,6,]
>>> li.count(5)
# extend:扩展
>>> li1 = [1,2,3,4,]
>>> li2 = ['kevin','xiaoxiao','xiaoge',]
>>> li1.extend(li2)
# index:索引
>>> li = [1,2,3,4,5,6,7,]
>>> li.index(4) # 需要索引的元素,返回所在列表的位置
>>> li.index(4,2,6) # 第二个参数为索引开始位置,第三个参数为索引结束位置
# insert:指定插入
>>> li = [1,2,3,4,]
>>> li.insert(2,'kevin') # 第一个位置为插入的位置,第二个参数为需要插入的内容
# pop:移除
>>> li = ['xiaoge','tian','xiao',‘kevin’,]
>>> li.pop() # 移除最后一个
>>> li.pop(2) # 移除'xiao'
# remove:指定移除
>>> li = ['kevin','xiao','ge','age',]
>>> li.remove('xiao')
# reverse:反转
>>> li = [1,2,3,4,]
>>> li.reverse()
# sort:排序
>>> li = ['a','x',2,6,8,20,1,]
>>> li.sort(key=ascii) # python3中int和str默认不能比较所有要指定排序方法,这里指定了使用ascii码的排序方法
  • 元组
# count:判断元素出现次数
>>> tu = (1,2,3,4,5,6,6,12,3,5,2,4,5,)
>>> tu.count(5)
# index:索引
>>> tu = (1,2,3,43,4,46,65,432,2,5,65,2,)
>>> tu.index(3)
>>> tu.index(46,4,8)
  • 字典
# clear:清空所有元素
>>> dic = dict(k1='v1',k2='v2')
>>> dic.clear()
# copy:复制
# fromkeys:拿到第一个参数复制给key,第二个参数复制个value,生成一个新的字典
>>> dic = {'k1':'v1','k2':'v2'}
>>> dic = dic.fromkeys(['k1','k3','k5',],'v1')
# get:当key不存在时默认返回None,可以自定义
>>> dic = {'k1':'v1','k2':'v2'}
>>> print(dic.get('k1','kevin')) # k1存在返回v1
>>> print(dic.get('k3','kevin')) # k3不存在返回‘kevin’
# items:获取所有的键值对
>>> dic = {'k1':'v1','k2':'v2'}
>>> print(dic.items())
# keys:获取所有的key
>>> dic = {'k1':'v1','k2','v2'}
>>> print(dic.keys())
# pop:指定移除
>>> dic = {'k1':'v1','k2':'v2','k3':'v3'}
>>> dic.pop('k2')
# popitem:随机移除一个元素
>>> dic = {'k1':'v1','k2':'v2'}
>>> dic.popitem()
# update:更新字典
>>> dic {'k1':'v1','k2':'v2'}
>>> dic.update({'k3':423})
>>> print(dic)
# values:获取所有的value
>>> dic = {'k1':'v1','k2':'v2'}
>>> print(dic.values())
posted @ 2016-12-26 00:09  Kevin_Ma_R  阅读(180)  评论(0编辑  收藏  举报