Python教程

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

本文主要是介绍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])

 

这篇关于python基础篇 15-常用模块:random string sorted lambda函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!