Python生成各种随机小数

python生成各种随机小数,总有一种满足你的需求


 

有时需要自己模拟生成数据,Python是最合适的工具了。下面是python中的random模块,它用于随机数生成的例子。

(1) 随机小数

import random

print(random.random())   #随机大于0 且小于1 之间的小数

#结果

#0.6897784315368002

print(random.uniform(0,9)) #随机一个大于0小于9的小数

#结果

#1.2981140261424073

(2) 随机整数

import random

print(random.randint(0,10)) #随机一个大于等于0且小于等于10的整数

#结果

#8

print(random.randrange(1,10,2)) #随机一个大于等于1且小于等于10之间的奇数,其中2表示递增基数

#结果

#9

a = random.randrange(9, 100, 10)#从9、19、29、39、……、99之间,随机选取一个实数

print(a)

#结果

#69

(3) 随机返回列表中的元素

import random

print(random.choice(['123', 2.68, 52, [1, 2]])) #随机返回参数列表中任意一个元素

#结果

#[1, 2]

print(random.sample(['123','abc',52,[1,2]],2)) #随机返回参数列表中任意两个元素,参数2指定返回的数量

#结果

#['123', 52]

a = range(3,100,2)  #从列表里面随机选取9个数字

b = random.sample(a, 9)

print(b)

#结果

#[11, 33, 15, 57, 37, 73, 59, 9, 55]

(4)打乱列表顺序

import random

list = [1,2,5,7,9,10]

random.shuffle(list)

print(list)

#结果

#[2, 1, 10, 5, 9, 7]

(5)验证码生成器

import random

def random_num():

    code = ''

    for i in range(4):

        ran1 = random.randint(0, 9)

        ran2 = chr(random.randint(65, 90))

        add = random.choice([ran1, chr(random.randint(65, 90))])

        code = ''.join([code, str(add)])

    return code

rand_n = random_num()

print(rand_n)

#结果

#U9AQ

(5) 写入文件

import random

count = 10

#count = 100000000

f1 = open('D:\svmdata.txt', 'w+')

for k in range(0, count):

    print(k)

    num1 = random.randint(0, 1)

    num2 = random.choice([0, random.uniform(2, 3)])

    num3 = random.choice([0, random.uniform(2, 3)])

    data = str(num1)+' '+str(num2)+' '+str(num3)

    f1.write(data + '

')

# print(random.choice([ 0, random.uniform(2, 3) ]))

# print(random.randint(0, 1))

# print(random.uniform(2, 3))

打开svmdata.txt:

1 2.047277419041446 2.0363010600552003

1 0 2.222463137076936

0 2.2634002225313807 0

1 2.507887676591875 2.649486851327983

0 0 2.351092197191832

1 2.129038547588649 0

1 2.542448724199632 2.7332599439968863

1 0 2.0074334074878664

0 0 0

1 0 2.7891750105778153

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年3月5日
下一篇 2023年3月5日

相关推荐