python算法技巧

列表转换成字符串

1.使用join()

若列表元素均为字符串, 则使用join()函数, 其语法如下所示:

String.join(iterable)

String指的是分隔符, iterbale为序列

列表转换字符串实例如下:

list = ["hello","world"]
print("".join(list)) #输出helloworld
list = ["hello","world"]
print(" ".join(list)) #输出hello world

2.使用map()

若列表中的元素不全是字符串, 则需要通过map()函数将所有元素转换成字符串的形式, 再进行join()函数操作

map函数对iterables序列的每一个元素调用function函数, 会返回一个迭代器,如果要转换为列表,可以使用 list() 来转换

map(function,iterables,.....)

列表转换字符串实例如下:

list1 = ("hello","world",110)
print("".join(list(map(str,list1)))) #输出helloworld110

3.使用循环进行字符串拼接

判断浮点类型是否为整数

1.使用is_integer()

2.求余判断

各种输入数据赋值

1.直接输入数据至列表

使用eval()函数输出数据至列表, 列表的函数会自动识别数据类型

若向输入至列表的数据全部为字符串类型,则可使用str.split()函数

2.若向将输入的数据赋值给多个变量

使用eval()函数

for循环同时遍历多个列表

Zip()函数

zip() 函数用于将可迭代的对象作为参数,将参数中的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

zip语法如下所示,返回值为元组列表

实例演示

变量值的交换

删除列表重复元素

使用set()函数强制转换的集合

获取字典最大的value以及对应的键值

假设定义一字典为dict1 = {"a":3,b:"4","c":5}, 现要求字典中最大的value以及其对应的键值

1.通过dict.values()max()

先通过max()函数寻找到字典中value的最大值,在循环遍历字典找出其对应的键值

2.通过sort()函数排序所有的value

先通过sort()函数找出字典中value的最大值, 然后按照第一种方法继续进行后面的步骤

最后更新于