2011-10-21 115 views
5

random.sample(arr,length) と呼び出すとエラーが返されるrandom_sample() takes at most 1 positional argument (2 given)です。いくつかのGoogle検索の後、私はランダムモジュールのサンプル関数を呼び出すときに、Numpyのランダムサンプル関数を呼び出していることがわかりました。私はnumpyを別の名前でインポートしようとしましたが、これは問題を解決しません。しかし、残りのプログラムではナンフィーが必要です。PythonのランダムモジュールがNumpyのランダムモジュールでアクセスできない

どのような考えですか?ありがとう

答えて

14

はサウンズ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 
+0

これは、ありがとう –

5

これは起こりません。あなたのコードにfrom numpy import *のような悪い輸入品がないかチェックしてください。

+0

はい、これは問題の一部でした。ありがとう –

5

は明確な輸入品を保管してください:あなたは

import random 
from numpy import * 

randomのようなものを持っているよう

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

良い点、ありがとう –

0

用途:

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

の代わりに:

import numpy as np import pandas as pd import random

+0

あなたは他の答えに同じアドバイスで4歳の質問に答えました。これはいかなる価値も追加しません。 –

関連する問題