生成随机数和抽样

生成随机数:

import random
import string
#随机整数:
random.randint(1,50)
#一定范围内按照步长采样:
random.randrange(0, 101, 2)

#随机浮点数:
random.random()
random.uniform(1, 10)

#从指定序列中采样一个:
random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()')
#从指定序列中采样多个:
random.sample(['01','02','20','29','35','36'],3)

#从a-zA-Z0-9生成指定数量的随机字符:
x=random.sample(string.ascii_letters + string.digits, 8)
#数字和字母连在一起
y= ''.join(x)

#打乱排序
items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
random.shuffle(items)

List常用操作

#添加元素
list.append(a)
#添加list
listA.extend(listB)

#从list中采样
newlist = random.sample(list, 3) 

#求交集
retB = list(set(listA).intersection(set(listB)))
#求并集
retC = list(set(listA).union(set(listB)))
#求差集,在B中但不在A中
retD = list(set(listB).difference(set(listA)))

排列组合,重复等迭代操作

itertools包:模块实现了许多迭代器构造块
https://docs.python.org/3/library/itertools.html.

#排列组合
#product,排列组合,考虑先后,考虑自身组合
product('ABCD', repeat=2)
##AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD

#permutations,排列组合,考虑先后,不考虑自身
permutations('ABCD', 2)
##AB AC AD BA BC BD CA CB CD DA DB DC

#combinations,组合,不考虑自身
combinations('ABCD', 2)
##AB AC AD BC BD CD

#combinations_with_replacement,组合,考虑自身
combinations_with_replacement('ABCD', 2)
##AA AB AC AD BB BC BD CC CD DD
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值