1.判断一个列表中的数值是否全部小于某个数
方法一:利用if函数 (只要列表中有一个数字比大 就可以终止比较)
n = int(input("请输入需要比较的数字:"))
arr1 = [1,3,4,5,8]
index = 0
for i in arr1:if i > n:index += 1continueelse:print("FALSE")break
if index == len(arr1):print("True")
方法二:lambda表达式(推荐使用)
print(all(map(lambda x : x < n,arr1)))
用到的语法介绍:
* lambda(arguments:expression) * map(arguments,list) * ==> 对列表中的每个元素进行计算,并且返回运算结果的迭代器 * * all(iterable) 接受一个可迭代对象作参数,如果都为true 则为true 否则为false *filter()和map()的区别,filter 只返回true的值 可以用来筛选列表中的 奇偶数*arr2_even = list(filter(lambda x : x % 2 == 0,arr2)) # 奇数:arr2_odd = list(filter(lambda x : x % 2,arr2)) print(arr2_even)
2.对列表中字符串按照特定的要求进行排序
要求:根据字符串的长度进行排序
arr2 = ["lowry","irving","james","durant"]
方法一:冒泡排序法
基础用法:
# 冒泡排序
def double_sort(arr):n = len(arr)for i in range(n):for j in range(0,n-i-1):if arr[j] > arr[j+1]:arr[j],arr[j+1] = arr[j+1],arr[j]return arr
print(double_sort([1,4,2,6,7,3]))
利用冒泡排序对arr2 进行排序
def double_sort(arr):n = len(arr)for i in range(n):for j in range(0,n-i-1):#改成比较元素的长度if len(arr[j]) >len(arr[j+1]):arr[j],arr[j+1] = arr[j+1],arr[j]return arr
arr2 = ["TOM","irving","JERRY","BLACK_PINK"]
print(double_sort(arr2))
方法二 利用内置函数sorted()
arr2 = ["TOM","irving","JERRY","BLACK_PINK"]
print("sorted方法:",sorted(arr2,key=len))
1.基本语法:sorted(iterable(,key)(,reverse)) 默认是升序排序
print(sorted([12,3,4,56,2]))
2.如果要降序排列 reverse=False
arr = [1,4,2,6,7,3] print(sorted(arr,reverse=False))
3.利用key ()参数 可以对字典进行关键字排序
students = [("tom",18),("jerry",20),("kelly",19)] students.sort(key=lambda x : x[1]) print(students)
4.利用key(),ord() 对字符串进行首字母排序
# * ord() 一个字符串作为参数,返回的是ASCII数值 def firstC(str1):return ord(str1[0]) print("按照首字母进行排序:",sorted(arr2,key=firstC))