Fork me on Gitee

Python成长之路2 魔法

Python中储存了很多对数字,字符串,集合,字典,元组处理的方法被称之为python魔法
一、python int魔法:
1:bit_length()计算该数用二进制需要几位去表示

二、python str魔法:

#1.join 以谋一个字符来分割字符串
# test = "alexismynight"
# t = "|"
# v=t.join(test)
# print(v)
![](https://img2020.cnblogs.com/blog/2205193/202011/2205193-20201111201353536-2093867000.png)

#2。lstrip('axa')从左边开始去掉,字符串里面能匹配的子字符串,遇到不匹配就
#不往后匹配
# test = "88888888xaaxlexxxeellex    "
# t = test.lstrip()
# print(t)
# v = test.lstrip('8xa')
# print(v)



#3.split 以某种分隔符进行分割,并删除该分隔符(可用于计算器编程)
# test = "1*2*3*4"
# v = test.split('*')
# print(v)

#splitlines()以字符串中的\n进行分割,并删除分隔符
# test = "asd\nasd12\ns3123"
# v = test.splitlines()
# print(v)

#4.find()寻找某个字符在字符串中是第几个位置
# test = "123456789abcdefg"
# v = test.find("6")
# print(v)

#isdecimal:用于判断字符串里是否为十进制数字(可用与账户格式判断)
test = "1234123"
v = test.isdecimal()
print(v)

#5.upper ,lower,把字符串全部转换为大写或者小写(用于验证码的使用)
test = "ssasdqWasdAWd"
v = test.lower()
print(v)

#6.replace替换,参数为替换前面几个
test = "aabbaaccaaddee"
v= test.replace("aa","abc",1)
print(v)

#7.startswith(),endswith()判断该字符串是不是以某个字符结尾
test = "aabbcc"
test = test.endswith("a")
print(test)
False

#python灰魔法 4个
#1:for 循环输出
for aaa in test:
      print(aaa) 
#2:len取字符串长度
test = "中asdasd123"
v = len(test)
print(v)

3:对字符串进行多个获取0:3代表大于等等于0小于3(切片)
test = "123456"
v = test[0:3]
print(v)

#4:索引
test = "123456"
v = test[3]
print(v)
#输入4
#list魔法-----------------------------------------------------
#参数
#python 中None代表空值,代表什么都没有
#1.append(5)在原list里最后追加,把整体看做一个加入列表
# li.append(5)
# li.append([1,2,3,4,5])
# li.append("alex")
# print(li)

#2.extend扩展原列表,extend,把元素单个循环加入列表,
# li = [11,22,33,"44"]
# l = li.copy()
# li.extend("不得了")
# print(li)

#3.clear 清空列表里的元素
# li = [11,22,33,"44"]
# li.clear()
# print(li)
#4.copy: v = li.copy()浅拷贝
# li = [11,22,33,"44"]
# l = li.copy()
# print(l)
#5.count 计算列表里单个元素出现的次数
# li = [11,22,33,"44",22,22]
# v=li.count(22)
# print(v)

#6.index : 根据值,去列表里找该值出现的第一个位置,可设置寻找的开始,结束位置
# li = [11,22,33,"44",22,22]
# v = li.index(22,2)
# print(v)

#7.insert:在指定索引位置插入
# li = [11,22,33,"44",22,22]
# li.insert(2,99)
# print(li)

#8.pop: 删除指定索引值,默认删除最后一个,
# li = [11,22,33,"44",22,22]
# v = li.pop()
# print(li,v)
# li = [11,22,33,"44",22,22]
# v = li.pop(3)
# print(li,v)

#9.删除列表中的指定值,左边优先
# li = [11,22,33,"44",22,22]
# li.remove(22)
# print(li)
#pop remove del li[0] del li[6:9] clear

#10.reverse 反转 :将列表反转
# li = [11,22,33,"44",22,22]
# li.reverse()
# print(li)

#11.sort :默认对列表中的数字进行从小到大排序,reverse=True代表从大到小
# li = [11,22,33,44,22,22]
# # li.sort()
# li.sort(reverse=True)
# print(li)
# a = 15999+999+2499+369+1499
# print(a)
#元组魔法----------------------------------------------------------------------------
#元组的元素不可修改,子元组不可修改,二级以上非元组可以修改
#修改元组中的元素,要判断该元素相对于该元组来说是列表还是元组,如果
#是列表就可以修改,是元组就不可以修改
#tuple元组
#元素不可被修改,元组不能被增加或者删除
#一般写元组在最后加一个,代表这是一个元组
#可以索引
#可以切片
#元组魔法
#count计算出现次数
# tu = (11,22,33,44,22)
# v = tu.count(22)
# print(v)

#index查询某个元素出现的索引位置
# tu = (11,22,33,44,22)
# v = tu.index(22,2)
# print(v)

#元组变为字符串
# tu = (1,2,3,"s",[2123],"sd")
# v = ''
# for i in tu:
#     v += str(i)
# print(v)

#字典 dict 键值对 
# 字典 dict 键值对---------------------------------------------------------
# 字典的value可以是任何值
# 数字,字符串,元组可以作为字典的key, 列表可以被修改不可以作为key,字典不可以
# 布尔作为key如果是True会被判定为数字1,False为数字0,字典作为key要考虑会不会
#与其他数字key值重叠。
# 在Python 3.5(含)以前字典是无序的但是从Python 3.6开始,字典是变成有顺序的了。
# 你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A
# 的后面。
# info = {"k1":"v1","k2":"v2","k3":1}
# info = {"k1":18,
#         "p":True,
#         "k3":[11,22,33,{'kk1':'vv1','kk2':'vv2','kk3':(11,22),}],
#         (1):(11,22,33,44),
#         "k5":2
#         }

#1.通过索引找value
# info = {"k1": 18,
#         "p": True,
#         "k3": [11, 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22), }],
#         (1): (11, 22, 33, 44),
#         "k5": 2
#         }
# print(info["k3"][3]['kk3'][1])

#删除数字
# info = {"k1": 18,
#         "p": True,
#         "k3": [11, 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22), }],
#         (1): (11, 22, 33, 44),
#         "k5": 2
#         }
# new_info = info.pop("k1")
# print(info)

# info = {"k1": 18,
#         "p": True,
#         "k3": [11, 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22), }],
#         ('k4'): (11, 22, 33, 44),
#         "k5": 2
#         }
# new_info = info.pop("k4")
# del info[('k4')]
#2.字典支持删除del,pop()
# del info["k3"][3]['kk3']
# print(info)

#字典循环,默认只输出key,info.keys() info.values()循环输出value
#
# info = {"k1": 18,
#         "p": True,
#         "k3": [11, 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22), }],
#         ('k4'): (11, 22, 33, 44),
#         "k5": 2
#         }
# for key,value in info.items():
#     print(key,value)

#3.把键值对全部获取 : for k,y in info.items()
# info = {"k1": 18,
#         "p": True,
#         "k3": [11, 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22), }],
#         ('k4'): (11, 22, 33, 44),
#         "k5": 2
#         }
# for key,value in info.items():
#     print(key,value)
posted @ 2020-11-11 19:39  Edendd  阅读(113)  评论(0)    收藏  举报
动态线条
动态线条end