我试图将一些数字放入numpy数组中
>>> np.array([20000001]).astype('float32')
array([ 20000000.], dtype=float32)
Run Code Online (Sandbox Code Playgroud)
1去了哪里?
我正在使用Python 2.7.x Stack.并使用sys.maxint作为正的最大整数(如果使用错误,请随时纠正我).有时我还需要将整数初始化为最小的负整数值.想知道Python 2.7.x Stack中最优雅/最正确的方式是什么?
林先生,提前谢谢
我需要知道Python中'word'中的字节数.我需要这个的原因是我需要从文件中读取的单词数量; 如果我知道单词中的字节数,我可以使用该file.read(num_bytes)函数从文件中读取适当的数量.
如何确定单词中的字节数?
我有一个有趣的问题,我想生成一个大数字(~30000位数),但它必须是所有相同的数字,如 66666666666666.......
到目前为止,我已经做到了这一点:
def fillWithSixes(digits):
result = 0
for i in range(digits):
result *= 10
result += 6
return result
Run Code Online (Sandbox Code Playgroud)
然而,这是非常低效的,并且想知道是否有更好的方法?cpp或java中的答案也可以.
编辑:
让我们不只是解决,666666.....我希望它对任何数字都是通用的.如何7777777777....或44444........或55555...?
字符串操作更糟糕,从当前的复杂性O(n)增加到O(n^2).
我正在寻找一种方式来获得(使用Python)(即C型整数最大值和最小值uint8,int8,uint16,int16,uint32,int32,uint64,int64从Python的...)。
我期待在ctypes模块中找到它
In [1]: import ctypes
In [2]: ctypes.c_uint8(256)
Out[2]: c_ubyte(0)
In [3]: ctypes.c_uint8(-1)
Out[3]: c_ubyte(255)
Run Code Online (Sandbox Code Playgroud)
但我找不到
朱莉娅(Julia)具有出色的功能:
julia> typemax(UInt8)
0xff
julia> typemin(UInt8)
0x00
julia> typemin(Int8)
-128
julia> typemax(Int8)
127
Run Code Online (Sandbox Code Playgroud)
我很确定Python具有类似的功能。
理想情况下,我什至在寻找一种方法来确保可以将给定的Python整数(据说是无界的)安全地转换为给定大小的C类型整数。如果数字不在预期的间隔内,则应引发异常。
当前溢出不会引发异常:
In [4]: ctypes.c_uint8(256)
Out[4]: c_ubyte(0)
Run Code Online (Sandbox Code Playgroud)
我看到了这样的整数值的最大值和最小值,但是由于作者正在寻找Python整数的最小值/最大值,所以有点不同……而不是C整数(来自Python)
我还注意到在python中检测C类型限制(“ limits.h”)?但是,即使它很相关,也不能真正回答我的问题。
我检查了Python持有的最大整数sys.maxsize,它返回了我9223372036854775807。
那为什么我仍然可以存储一个大于该范围的值?
存储一个整数需要多少个字节,Python是否根据整数的大小更改字节数?
我正在使用Python 3.6
上下文:构建一致的哈希算法。
\nPython 函数的官方文档指出hash():
\n\n返回对象的哈希值(如果有)。哈希值是整数。
\n
但是,它没有明确说明该函数是否映射到整数范围(具有最小值和最大值)。
\n来自其他原始类型值有界的语言(例如 C#\'s/Java\'s Int.MaxValue),我知道Python 喜欢用“无界”术语\xe2\x80\x93 进行思考,即从 切换int到longin的背景。
我是否可以假设该hash()函数也是无界的?或者它是否有界,例如映射到 Python 分配给“int-proper” \xe2\x80\x93的最大/最小值(-2147483648即在 到之间)2147483647?
我想从给定的 uuid 生成一个“随机”int。我所关心的是给定 uuid,我将始终得到相同的 int。
我知道 uuid 的范围比 python 中 int 的范围大得多,所以我冒着 2 个不同的 uuid 生成相同 int 的风险,但这是我愿意承担的风险。
所以我的问题是从给定的 uuid 生成这样的 int 的最佳方法是什么?我知道我可以使用 uuid 作为 random() 的种子并生成一个随机 int,但想知道是否有一个“更干净”的解决方案。