【问题标题】:Python's random module made inaccessible by Numpy's random moduleNumpy 的随机模块使 Python 的随机模块无法访问
【发布时间】:2011-10-21 22:09:04
【问题描述】:

当我打电话给random.sample(arr,length) 错误返回random_sample() takes at most 1 positional argument (2 given)。经过一番谷歌搜索后,我发现当我想调用随机模块的样本函数时,我正在调用 Numpy 的随机样本函数。我尝试以不同的名称导入 numpy,但这并不能解决问题。不过,我需要 Numpy 来完成程序的其余部分。

有什么想法吗?谢谢

【问题讨论】:

    标签: python numpy random-sample


    【解决方案1】:

    听起来你有类似的东西

    import random
    from numpy import *
    

    并且random 被 numpy 导入破坏了。如果您想保留import *,则需要重命名random:

    import random as rnd    # or whatever name you like
    from numpy import *
    

    另外一种可能更好的是,将 numpy 作为模块导入,而不是将其全部拉入模块的命名空间:

    import random
    import numpy as np      # or leave as numpy, or whatever name you like
    

    【讨论】:

      【解决方案2】:

      这不应该发生。检查您的代码是否有错误的导入,例如 from numpy import *。

      【讨论】:

      • 是的,这是问题的一部分。谢谢
      【解决方案3】:

      确保导入的内容不同:

      >>> import numpy.random
      >>> import random         # python's random
      

      【讨论】:

        【解决方案4】:

        用途:

        import numpy as np
        import pandas as pd
        import random as rd
        

        代替:

        import numpy as np import pandas as pd import random

        【讨论】:

        • 您回答了一个 4 年前的问题,并且在其他答案中已经给出了相同的建议。这不会增加任何价值。
        猜你喜欢
        • 1970-01-01
        • 2015-04-26
        • 2016-10-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-03-13
        • 2021-05-17
        • 1970-01-01
        相关资源
        最近更新 更多