python基础篇 15-常用模块:random string sorted lambda函数

一、random

import os,random,sys,time,string

print(random.randint(1,10))     # 产生随机的整数
print(random.uniform(1,10))   # 产生随机的小数
#
print(random.choice(string.ascii_lowercase))    #随机选择一个元素
print(random.sample(string.ascii_lowercase,4))  #从小写字母中随机的取4个不重复的元素,返回list
#
l=[random.choice(string.digits) for _ in range(6)]   #可能取到重复的元素
l2 = random.sample(string.digits,6) #取的这6个元素里面,它不会有重复的,返回list


l = [1,2,3,4,5,6,7,8]
print('打乱之前的',l)
random.shuffle(l)           #洗牌 打乱顺序,无返回值
print('打乱之后的',l)

 

 二、sorted()函数

#字符串
s='235423236236' result = sorted(s,reverse=True) # 返回list 可以排序 string list类型,但是list有sort()函数,string没有,这样都可以使用sorted()函数 print(result) #字典 # 例子 给字典按照value排序 这个很重要! 很重要! 很重要! d = { 'lhy':88, 'ds':93, 'fd':100, 'hzy':35 } # 此方法 多层循环遍历 n*n浪费空间 4*4 需要循环16次 ,此方法最蠢 vs = sorted(d.values(),reverse=True) for v in vs: for key,value in d.items(): if v==value: print(key,v) new_d = dict(sorted(d.items())) # 默认按照key进行字典的排序 # 直接可以使用lambda代替 def get_value(x): return x[1] #d.items()返回的是二位数组,二位数组排序可以使用sorted()中key指定按照哪个key排序 result = sorted(d.items(),key=lambda x:x[0],reverse=True) # result = sorted(d.items(),key=get_value,reverse=True) print(dict(result))

 三、lambda函数

 常常结合 map filter reduce等高阶函数一起使用

def write_file():
    pass

a = lambda x,y:x+y      # x,y作为入参,返回值为x+y   实现简单的函数

result = a(1,2)
print(result)

filter(lambda x:str(x),[1,2,3,4,5])

 

posted @ 2021-12-26 20:46  捞铁  Views(53)  Comments(0Edit  收藏  举报