- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个奇怪的问题,
我已经创建了以下代码来随机生成 1 和 x 之间的数字,增量为 1 并存储它们
import random
bootstrap_node_list_recieved = [] #List of all nodes addresses recieved during the bootstrap peroid - Is a list so we can compare duplicatition probability etc
average_getAdrr_no_node_response = 100 #Number or nodes typically sent when a node requests a getAddr message
network_ip_node_size = 5000 # Number of IP addresses / nodes that have been seen on the network in the past 2 weeks
#Move into calculations.py when ready
#Number of nodes recieved (Bootstrap)
def bootstrap_node_getAddr():
#### TODO ####
#Random generation of nodes (number represents a single node), from 1 to x for an average amount of nodes
# node_list=[random.randrange(1,network_ip_node_size,1) for _ in range (average_getAdrr_no_node_response)]
for i in range (average_getAdrr_no_node_response):
bootstrap_node_list_recieved.append(random.randrange(1,network_ip_node_size,1))
print 'bootstrap_node_getAddr: ', bootstrap_node_list_recieved
# return bootstrap_node_list_recieved
bootstrap_node_getAddr()
这段代码本身运行良好,但是当我将它插入到我的主代码库中时出现错误
Traceback (most recent call last):
File "BootstrapBTC.py", line 117, in query_dns_servers
bootstrap_node_getAddr()
File "/home/richard/Dropbox/PhD/Simulator BTC - Ours/Calculations.py", line 33, in bootstrap_node_getAddr
bootstrap_node_list_recieved.append(random.randrange(1,network_ip_node_size,1))
AttributeError: 'builtin_function_or_method' object has no attribute 'randrange'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "BootstrapBTC.py", line 90, in run
yield self.env.process(query_dns_servers(env, self))
AttributeError: 'builtin_function_or_method' object has no attribute 'randrange'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "BootstrapBTC.py", line 178, in <module>
env.run()
File "/usr/local/lib/python2.7/dist-packages/simpy/core.py", line 137, in run
self.step()
File "/usr/local/lib/python2.7/dist-packages/simpy/core.py", line 229, in step
raise exc
AttributeError: 'builtin_function_or_method' object has no attribute 'randrange
第90行的代码是
yield self.env.process(query_dns_servers(env, self))
它只是调用
#Average respsonse time from a DNS server
def DnsServerResponse(env, self):
yield self.env.timeout(dns_average_response)
它在模拟时间中附加了一个随机值,我不认为它与这行代码有任何关系,因为它根本不使用随机库,事实上插入的代码是迄今为止唯一的使用库
有人知道问题出在哪里吗?这让我发疯!
谢谢!
尝试将我的导入更改为随机导入,现在得到:
Traceback (most recent call last):
File "BootstrapBTC.py", line 102, in query_dns_servers
DnsUp = DnsUpProbability()
File "/home/richard/Dropbox/PhD/Simulator BTC - Ours/Calculations.py", line 39, in DnsUpProbability
up = (0 if random() > Prob_DNS_UP else 1)
TypeError: 'module' object is not callable
最佳答案
错误是因为您很可能将 random
分配给代码中某处的另一个值,覆盖了 random 模块的原始 random
。
尝试检查您的代码,看看您还随机分配了什么。或者你可以通过这样做来检查它:在你使用随机之前
print(random, type(random))
解决此问题的另一种方法是,如果您的代码太长且难以检查,您可以像这样导入随机:使用 import...as... 格式。
import random as rand
# and when using it, type rand instead of random
bootstrap_node_list_recieved.append(rand.randrange(1,network_ip_node_size,1))
您还应该检查您的 sys.path 中是否有任何名为 random.py 的文件。
关于python - 'builtin_function_or_method' 对象没有属性 'randrange',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43023970/
当我运行这个程序时:(python 3.3.1) import random import time from random import randrange print(' ') print('I
如何确保 python 中每次返回的值都是唯一的?我正在使用 random.randrange 像这样 - batter = ("Sammy Slammer","Lonnie Longball","B
我一直想知道 python 中的 random.randrange() 函数究竟是如何返回的在不是二的幂的范围内具有均匀偏差的值(这很容易,因为 N 位是随机产生的) 提前致谢! 最佳答案 快速查看源
所以我正在制作一个小型文本游戏,我想做的一件事是从一系列变量中获取一个随机数。 出于测试目的,我编写了如下代码: slow_speed = random.randrange(10,25) medium
我试图为 Canvas 上生成的对象创建随机坐标( Canvas 是用户屏幕的大小,因此范围不断变化。) random.randrange(12.5, int(resX-12.5)) 这是代码行 re
使用以下代码时: import random sticks = 100 randomstep = random.randint(1, 6) expertmarbles = random.randran
我有一个奇怪的问题, 我已经创建了以下代码来随机生成 1 和 x 之间的数字,增量为 1 并存储它们 import random bootstrap_node_list_recieved = [] #
我有 2 个文件 a.py 和 b.py a.py from b import * #and then some lines of code b.py import random red = rand
我正在尝试编写密码生成器的代码,但它无法正常工作,而且我无法理解该错误。 import random import string lw = list(string.ascii_lowercase) u
我正在尝试制作一个游戏,在这个游戏中我想在 0 到 -100 之间的随机 Y 位置上制作 100 个对象。 但是当我尝试random.randrange(0, -100)时,它返回一条错误消息: Tr
我试图使用 while 循环将列表拆分为训练数据和测试数据,但在运行一两次迭代后,立即弹出 randrange() 错误。无法理解出了什么问题。提取的 csv 文件有 767 行数据。下面是代码: d
在经过 while 循环后,我在从函数中获取随机 int 时遇到了问题。该函数的目的是洗牌: def shuffling(maindeck, shuffle_steps): random.seed()
所以,我在类里面被要求使用特定的随机种子 237。但我不知道如何正确实现它。例如,这是我的代码。 在 python 3 中。在这个例子中,我基本上扔了 m 个边数为 k 的骰子,并尝试返回 m 长度的
我所知道的 randrange 和 randint 之间的唯一区别是 randrange([start], stop[, step])你可以传递一个 step 参数并且 random.randrang
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我正在运行这段代码,它是一个“人工智能”,它知道答案是 10。每次我运行它时,它有时都会给我这个错误。这是在 Python 3.6.3 中 错误: , 1) File "D:\Jonte\pyth
我想获得一个介于 0 和 20 之间的随机值,但跳过 3,就像 python 等效于: random.randrange(0,20, 3) 最佳答案 这是一个单行: (0...20).to_a.kee
我使用随机数生成器生成 5 到 10 之间的随机数。可以不那么难吗?我之前在代码中使用过它(+2000 行代码,这里太多了)并且没有发生编码错误。 我的代码只是我游戏的彩蛋,但它破坏了我所有的代码:
我目前正在使用 Python 3.4 的 randrange 函数构建一个小问答游戏。我已经设置好并可以自动选择一个变量来选择一个问题。我唯一的问题是如何让它在您每次参加考试时只使用一次问题。 #Ma
在 Python 2.7.1 中,我导入随机模块。但是,当我调用 randint() 时,出现错误: ValueError: empty range for randrange() (1,1, 0)
我是一名优秀的程序员,十分优秀!