python之数字

#将数字格式化后输出,并控制数字的位数、对齐、千位分隔符和其他的细节
x = 1234.56789 print(format(x, '0.2f')) print(format(x, '>10.1f')) print(format(x, '<10.1f')) print(format(x, '^10.1f')) print(format(x, ',')) print(format(x, '0,.1f')) print(format(x, 'e')) print(format(x, '0.2E')) print('The value is {:0,.2f}'.format(x)) 运行结果: 1234.57 1234.6 1234.6 1234.6 1,234.56789 1,234.6 1.234568e+03 1.23E+03 The value is 1,234.57
#将整数转换为二进制、八进制或十六进制的文本串,可以分别使用 bin(),oct()或hex()函数
x =1234
print(bin(x))
print(oct(x))
print(hex(x))
print(format(x, 'b'))#如果你不想输出 0b , 0o 或者 0x 的前缀的话,可以使用 format() 函数
print(format(x, 'o'))
print(format(x, 'x'))
print(int('4d2', 16))#以不同的进制转换整数字符串,简单的使用带有进制的 int() 函数
print(int('10011010010', 2))

运行结果:
0b10011010010
0o2322
0x4d2
10011010010
2322
4d2
1234
1234
#大数据集 (比如数组或网格) 上面执行计算,NumPy 的一个主要特征是它会给 Python 提供一个数组对象,相比标准的 Python 列表而已更适合用来做数学运算,底层实现中,NumPy 数组使用了 C 或者 Fortran 语言的机制分配内存
import numpy as np
x = [1, 2, 3, 4]
y = [2, 4, 6, 8]
ax = np.array(x)
ay = np.array(y)
print(ax*2)
print(ax + 10)
print(ax + ay)
print(ax * ay)
def f(x):
    return 3*x**2 + 2*x + 7
print(f(ax))

[2 4 6 8]
[11 12 13 14]
[ 3 6 9 12]
[ 2 8 18 32]
[12 23 40 63]

#从一个序列中随机抽取若干元素,或者想生成几个随机数,random 模块有大量的函数用来产生随机数和随机选择元素

import random
import time
list_1 =[1, 2, 3, 4, 5, 6, 7, 8, 9]
random.seed(time.time())#random 模块使用 Mersenne Twister 算法来计算生成随机数。这是一个确定性算法,但是你可以通过 random.seed() 函数修改初始化种子
print(random.choice(list_1))#从一个序列中随机的抽取一个元素
print(random.sample(list_1,3))#为了提取出 N 个不同元素的样本用来做进一步的操作
random.shuffle(list_1)#打乱序列中元素的顺序
print(list_1)

print(random.randint(0,9))#生成随机整数
print(random.random())#生成 0 到 1 范围内均匀分布的浮点数
print(random.getrandbits(200))#要获取 N 位随机位 (二进制) 的整数


2
[5, 9, 6]
[9, 1, 4, 6, 8, 5, 3, 2, 7]
6
0.43069591894129
889429888418405768095992076259360626914303438803154996598826

 

posted @ 2018-04-10 01:34  Mr.SSC  阅读(244)  评论(0编辑  收藏  举报