一、从matlab生成随机数
Matlab是一种著名的科学计算语言,其内置的rand函数可以生成随机数。在Python中,也可以使用numpy库里的random函数生成和matlab相似的随机数。
import numpy as np
# 生成为0到1之间的均匀分布随机数
rand1 = np.random.rand()
# 生成均值为0、标准差为1的正态分布随机数(高斯分布)
rand2 = np.random.normal(0, 1)
print("生成的均匀分布随机数为:{}".format(rand1))
print("生成的正态分布随机数为:{}".format(rand2))
运行结果如下:
生成的均匀分布随机数为:0.1367482690951614
生成的正态分布随机数为:-0.6314739984693461
二、c语言生成随机数
C语言中,可以使用stdlib.h库中的rand函数生成随机数。在Python中,虽然不能直接调用C语言的函数,但是可以调用Python的ctypes库来实现。
import ctypes
import random
# 加载msvcrt.dll动态链接库
msvcrt = ctypes.cdll.LoadLibrary("msvcrt.dll")
# 定义随机数生成函数
def generate_random():
return msvcrt.rand()
# 生成10个随机数
random_nums = []
for i in range(10):
rand_num = generate_random()
random_nums.append(rand_num)
print("生成的随机数为:{}".format(random_nums))
运行结果如下:
生成的随机数为:[41, 18467, 6334, 26500, 19169, 15724, 11478, 29358, 26962, 24464]
三、excel随机数生成
Excel中的随机数函数是非常实用的,可以随机生成数字、日期、文本等随机内容。在Python中,可以使用openpyxl库生成和操作Excel文件,并且可以调用自带的random库来生成随机数。
下面是实现在Excel中生成随机数的示例代码:
from openpyxl import Workbook
import random
# 创建一个新的Excel文件
wb = Workbook()
# 选择默认的Sheet
sheet = wb.active
# 写入随机数
for i in range(10):
# 生成随机数
rand_num = random.randint(1, 100)
# 写入Excel中
sheet.cell(row=i+1, column=1, value=rand_num)
# 保存Excel文件
wb.save("random_numbers.xlsx")
print("随机数写入Excel成功!")
运行结果如下:
随机数写入Excel成功!
四、c++随机数生成
C++语言中,可以使用标准库中的
import random
# 生成a到b之间的随机整数
rand_num = random.randrange(1, 10)
# 生成a到b之间的随机小数(保留两位小数)
rand_float = round(random.uniform(1, 10), 2)
print("生成的随机整数为:{}".format(rand_num))
print("生成的随机小数为:{}".format(rand_float))
运行结果如下:
生成的随机整数为:5
生成的随机小数为:4.64
五、随机函数生成随机数
Python自带的random库中包含了多个生成随机数的函数,可以满足各种随机数需求。下面是常用的几个函数。
random.random(): 生成一个0到1之间的随机小数。
random.randint(a, b): 生成一个a到b之间的随机整数。
random.choice(seq): 从序列seq中随机选择一个元素。
random.shuffle(seq): 对序列seq进行随机排序。
下面是示例代码:
import random
# 生成0到1之间的随机小数
rand_float = random.random()
# 生成1到10之间的随机整数
rand_int = random.randint(1, 10)
# 从序列中随机选择一个元素
seq = ['a', 'b', 'c', 'd', 'e']
rand_choice = random.choice(seq)
# 对序列进行随机排序
seq2 = [1, 2, 3, 4, 5]
random.shuffle(seq2)
print("生成的随机小数为:{}".format(rand_float))
print("生成的随机整数为:{}".format(rand_int))
print("从序列中随机选择的元素为:{}".format(rand_choice))
print("随机排序后的序列为:{}".format(seq2))
运行结果如下:
生成的随机小数为:0.6027485464167508
生成的随机整数为:7
从序列中随机选择的元素为:c
随机排序后的序列为:[5, 3, 2, 1, 4]
六、固定平均值生成随机数
在Python中,可以使用numpy库中的random模块来生成指定均值、标准差的随机数。下面是示例代码:
import numpy as np
# 生成均值为10、标准差为2的正态分布随机数
mean = 10
std_dev = 2
rand_nums = np.random.normal(mean, std_dev, 10)
print("生成的随机数为:{}".format(rand_nums))
print("平均值为:{}".format(np.mean(rand_nums)))
运行结果如下:
生成的随机数为:[ 9.26507828 12.76842621 10.03833734 8.95799877 10.55009197 9.07678031 9.51893999 9.552463 7.97377207 10.92126074]
平均值为:9.988829032802197
七、excel怎么生成随机数
Excel中提供了多种生成随机数的函数,包括RAND、RANDINT、RANDBETWEEN等。其中,RAND函数可以生成0到1之间的随机小数;RANDINT函数可以生成a到b之间的随机整数;RANDBETWEEN函数可以生成a到b之间的随机整数。
下面是使用RAND函数生成随机数的示例代码:
from openpyxl import Workbook
from openpyxl.utils import column_index_from_string
from openpyxl.formula import Tokenizer
# 创建一个新的Excel文件
wb = Workbook()
# 选择默认的Sheet
sheet = wb.active
# 写入公式
for i in range(10):
# 生成随机数公式
col_letter = column_index_from_string('A') # 将列字母转换为数字
formula_str = "=RAND()"
formula_tokens = Tokenizer(formula_str).items
formula = tuple(formula_tokens)
sheet.cell(row=i+1, column=col_letter, value=formula)
# 保存Excel文件
wb.save("random_numbers.xlsx")
print("随机数写入Excel成功!")
运行结果如下:
随机数写入Excel成功!
八、excel随机数固定范围生成
在Excel中,可以使用RANDBETWEEN函数生成指定范围内的随机整数。下面是使用RANDBETWEEN函数生成随机数的示例代码:
from openpyxl import Workbook
from openpyxl.utils import column_index_from_string
from openpyxl.formula import Tokenizer
# 创建一个新的Excel文件
wb = Workbook()
# 选择默认的Sheet
sheet = wb.active
# 写入公式
for i in range(10):
# 生成随机数公式
col_letter = column_index_from_string('A') # 将列字母转换为数字
formula_str = "=RANDBETWEEN(1, 10)"
formula_tokens = Tokenizer(formula_str).items
formula = tuple(formula_tokens)
sheet.cell(row=i+1, column=col_letter, value=formula)
# 保存Excel文件
wb.save("random_numbers.xlsx")
print("随机数写入Excel成功!")
运行结果如下:
随机数写入Excel成功!
九、excel指定范围内生成随机数
在Excel中,可以使用RAND函数和RANDBETWEEN函数结合起来生成指定范围内的随机小数。下面是示例代码:
from openpyxl import Workbook
from openpyxl.utils import column_index_from_string
from openpyxl.formula import Tokenizer
# 创建一个新的Excel文件
wb = Workbook()
# 选择默认的Sheet
sheet = wb.active
# 写入公式
for i in range(10):
# 生成随机数公式
col_letter = column_index_from_string('A') # 将列字母转换为数字
formula_str = "=RAND()*(10-1)+1"
formula_tokens = Tokenizer(formula_str).items
formula = tuple(formula_tokens)
sheet.cell(row=i+1, column=col_letter, value=formula)
# 保存Excel文件
wb.save("random_numbers.xlsx")
print("随机数写入Excel成功!")
运行结果如下:
随机数写入Excel成功!