join、sorted、lambda、index函数实例

实例引入

#这是字符串去重的代码

st=input('一个字符串')
ans=''.join(sorted(set(st),key=lambda ch:st.index(ch)))
print(ans)

这里面涉及了四个常见的点,是个很好的理解实例:join、sorted、lambda、index

join

描述

Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

语法

join()方法语法:

str.join(sequence)

参数

sequence -- 要连接的元素序列。

返回值

返回通过指定字符连接序列中元素后生成的新字符串。

sorted

描述

sorted() 函数对所有可迭代的对象进行排序操作。

sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。 

语法

sorted(iterable,key=None,reverse=False)

参数说明:

iterable -- 可迭代对象。

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

返回值

返回重新排序的列表。

lambda

描述

Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。
是一种快速定义单行的最小函数,可以简化代码。函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

语法

python中使用Lambda来创建匿名函数

lamdba表达式的语法非常的简单

只要一个语句

lambda [arg1 [, arg2, ... , argn]]: expression

实例

下面是一个lamdba表达式的例子

 

sum=lambda a,b: a + b sum(1,3)

我们可以理解为

a,b 是两个传递参数

a + b是一个表达式

sum是函数名

当我们把a、b两个参数传递给sum函数,会对a和b进行运算,a+b,然后返回结果

index

描述

Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

语法

index()方法语法:

str.index(str,beg=0,end=len(string))

参数

str -- 指定检索的字符串

beg -- 开始索引,默认为0。

end -- 结束索引,默认为字符串的长度。

返回值

如果包含子字符串返回开始的索引值,否则抛出异常。

 
原文地址:https://www.cnblogs.com/thx2199/p/15318746.html