ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python随机值生成的常用方法

2022-09-02 21:34:05  阅读:276  来源: 互联网

标签:10 end python random 生成 range 随机 print


一、随机整数
1.包含上下限:[a, b]

import random
#1、随机整数:包含上下限:[a, b]

for i in range(10): print(random.randint(0,5),end=" | ")

查看运行结果:

2.不包含上限:[a, b)

import random

#2.随机整数:不包含上限:[a, b)

for i in range(10): print(random.randrange(0,5),end=" | ")

查看运行结果:

3.随机选取指定范围内(指定基数)递增集合中的随机数

#3.随机选取指定范围内(指定基数)递增集合中的随机数
for i in range(10): print(random.randrange(0,10,2),end=" | ")
print()
for i in range(10): print(random.choice(range(0,10,2)),end=" | ")

查看运行结果:

 

二、随机浮点数

1. 0-1之间的随机浮点数:

#4 0-1之间的随机浮点数
for i in range(10): print(random.random())

查看运行结果:

 2. 随机浮点数([a,b]上下限都包含;a<=b 或者 a>=b都可以)

#5.随机浮点数
for i in range(10): print(random.uniform(1,10),end="|")
print()
for i in range(10): print(random.uniform(10,1),end="|")

查看运行结果:

 

三、随机字符串

1.随机字符

random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence

#6.随机字符
for i in range(10):  print(random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()'),end="|")
print()
for i in range(10):  print(random.choice("helloworld"),end="|")
print()
for i in range(10):  print(random.choice(["python", "java", "c", "c++", "golang"]),end="|")
print()
for i in range(10):  print(random.choice(("js", "python", "ruby")),end="|")

查看运行结果:

2.多个字符中生成指定数量的随机字符(返回数组格式)

#7.多个字符中生成指定数量的随机字符,返回数组格式
print(random.sample('abcdefghijklmnopqrstuvwxyz',5))

查看运行结果:

 将以下的字符串进行拼接

str = ''.join(random.sample('abcdefghijklmnopqrstuvwxyz',5))
print(str)

查看运行结果:

 

四、随机数使用到的一些算法:

1.均匀分布:均匀分布只在限定范围内,范围小,均匀分布

import random
print(random.uniform(1, 10))

查看运行结果:

2.正太分布:正态分布范围会更广,在均值处对称集中;

import random
print(random.gauss(5, 1))  #(均值为 5, 标准差为 1)

查看运行结果:

3.指数分布:是一种连续概率分布。指数分布可以用来表示独立随机事件发生的时间间隔

import random
print(random.expovariate(0.2))

查看运行结果:

 

标签:10,end,python,random,生成,range,随机,print
来源: https://www.cnblogs.com/mrwhite2020/p/16644756.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有