①python 里数字用**就是幂运算,比如2**3的结果就是8
②python 里*表示接收的参数是元组,**表示接收的参数是字典
③在python中,不用def来定义函数,而用lambda来定义函数的函数叫做匿名函数。
格式:lambda 参数:表达式
多个参数用逗号隔开,表达式是返回的结果
lambda_a=lambda x,y:x+y
④
1 map()函数的简介以及语法:
map是python内置函数,会根据提供的函数对指定的序列做映射。
map()函数的格式是:
map(function,iterable,…)
第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一个集合。
把函数依次作用在list中的每一个元素上,得到一个新的list并返回。注意,map不改变原list,而是返回一个新list。
2 map()函数实例:
del square(x):
return x ** 2
map(square,[1,2,3,4,5])
结果如下:
[1,4,9,16,25]
通过使用lambda匿名函数的方法使用map()函数:
map(lambda x, y: x+y,[1,3,5,7,9],[2,4,6,8,10])
结果如下:
[3,7,11,15,19]
通过lambda函数使返回值是一个元组:
map(lambdax, y : (x**y,x+y),[2,4,6],[3,2,1])
结果如下
[(8,5),(16,6),(6,7)]
当不传入function时,map()就等同于zip(),将多个列表相同位置的元素归并到一个元组:
map(None,[2,4,6],[3,2,1])
结果如下
[(2,3),(4,2),(6,1)]
通过map还可以实现类型转换
将元组转换为list:
map(int,(1,2,3))
结果如下:
[1,2,3]
将字符串转换为list:
map(int,‘1234’)
结果如下:
[1,2,3,4]
提取字典中的key,并将结果放在一个list中:
map(int,{1:2,2:3,3:4})
结果如下
[1,2,3]
————————————————
版权声明:本文为CSDN博主「菜鸟更要努力呀」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/quanlingtu1272/article/details/95482253
另外,做题的时候我还发现有个小用法,可以把输入的字符都变为你想要的类型。因为input()函数返回的都是字符串,所以我们可以用map()函数将输入的字符都转为int型或者其它。
如下代码:
a,b=map(int,input().strip().split())
print(a)
print(b)
print(a+b)
输出结果:
如果我们 不用map()函数,如下代码:
a,b=input().strip().split()
print(a)
print(b)
print(a+b)
得到如下结果:
另外,如果直接写
l=input().strip().split()
print(l)
那么输出结果是
也就是一个变量可以接收为一个列表。但是如果用n个变量,就只能接收n个输入。
⑤strip()函数
strip()函数:默认用法,即括号内不填参数的用法,就是去掉字符串两端的空格。
lstrip()函数:默认用法,去掉字符串左端的空格
rstrip()函数:默认用法,去掉字符串右端的空格
去除指定字符
比如
s='abcaaaaaabc'
print(s.strip('abc'))
指定字符只是指定一种字符组合,如’abc’就可以表示’aaaaaa’或’bbbac’或’abcaaaaaabc’,也就是只要有指定字符里的字符就行。并且记住它只去掉两端符合的组合。
lstrip(),rstrip()同理可得。
⑥split()函数
s='ab.ca.aa.a.aab c'
print(s.split('a'))
print(s.split('.',2))#字符串切割两次
print(s.split('.',4)[2])#输出被切割后的下表为2的切片
print(s.split(' '))
print(s.split())
s1,s2,s3=s.split('.',2)#切割两次生成的三个字符串依次存入s1,s2,s3
print(s1+'\n'+s2+'\n'+s3)
结果:
⑦range()函数
此函数可以创建一个列表,常用于for循环
python3返回的是一个对象而不是列表。
ran=range(10)
print(ran)
结果:
ran=range(10)
print(ran)
for i in ran:
print(i)
list=list(ran)
print(list)
结果:
⑧python里的数据交换代码相当简单:
a,b=b,a就行了
a=1
b=100
print(a)
print(b)
a,b=b,a
print(a)
print(b)
结果: