[解決済み] メインループの 'builtin_function_or_method' オブジェクトが反復可能でない
2022-01-10 12:35:45
質問
コードは次のとおりです。
import urllib2
import time
import datetime
stocksToPull = 'AAPL','GOOG','MSFT','CMG','AMZN','EBAY','TSLA'
def pullData(stock):
try:
print 'Currently pulling',stock
print str(datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S'))
urlToVisit = 'http://chartapi.finance.yahoo.com/instrument/1.0/'+stock+'/chartdata;type=quote;range=5d/csv'
saveFileLine = stock+'.txt'
try:
readExistingData = open(saveFileLine,'r').read()
splitExisting = readExistingData.split('\n')
mostRecentLine = splitExisting[-2]
lastUnix = mostRecentLine.split(',')[0]
except:
lastUnix = 0
saveFile = open(saveFileLine,'a')
sourceCode = urllib2.urlopen(urlToVisit).read()
splitSource = sourceCode.split
for eachLine in splitSource:
splitLine = eachLine.split(',')
if len(splitLine) ==6:
if splitLine[0] > lastUnix:
if 'values' not in eachLine:
lineToWrite = eachLine+'\n'
saveFile.write(lineToWrite)
saveFile.close()
print 'Pulled',stock
print 'sleeping...'
print str(datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S'))
time.sleep(300)
except Exception,e:
print 'main loop',str(e)
for eachStock in stocksToPull:
pullData(eachStock)
実行すると、エラーが発生します。
main loop 'builtin_function_or_method' object is not iterable
誤字脱字をチェックしましたが、エラーは見つかりませんでした。
解決方法は?
直接回答
ここのコードで。
saveFile = open(saveFileLine,'a')
sourceCode = urllib2.urlopen(urlToVisit).read()
splitSource = sourceCode.split
変更
sourceCode.split
を
sourceCode.split()
.
このエラーについて詳しく知りたい方は、以下をお読みください。
デバッグの際には、try...exceptブロック、特に"expect Exception"ブロックは、何が問題なのかわからなくなるほど汎用的なので、削除した方がよいでしょう。
try...exceptブロックを削除して再度実行すると、以下のようなエラー情報が得られます。
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-5-c4fe20f718cd> in <module>()
43
44 for eachStock in stocksToPull:
---> 45 pullData(eachStock)
<ipython-input-5-c4fe20f718cd> in pullData(stock)
23 splitSource = sourceCode.split
24
---> 25 for eachLine in splitSource:
26 splitLine = eachLine.split(',')
27 if len(splitLine) ==6:
TypeError: 'builtin_function_or_method' object is not iterable
エラーメッセージ
TypeError: 'builtin_function_or_method' object is not iterable
は25行目に関連付けられており、つまり
splitSource
は
builtin_function_or_method
であり、かつ
iterable
.
とは何ですか?
splitSource
? それは
sourceCode.split
. ここで答えが出ます。メソッドを呼び出すには
()
そうしないと、メソッドそのものを取得することになります。メソッド
str.split
は明らかに
iterable
!
関連
-
[解決済み] Pythonで、あるオブジェクトが反復可能かどうかを判断するにはどうしたらいいですか?
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
-
[解決済み] オブジェクトの種類を決定しますか?
-
[解決済み] オブジェクト名の前のシングルアンダーコアとダブルアンダーコアの意味は何ですか?
-
[解決済み] Pythonのクラスはなぜオブジェクトを継承するのですか?
-
[解決済み] Pythonでnullオブジェクトを参照する
-
[解決済み] Java 8 JDK を使用して、Iterable を Stream に変換する
-
[解決済み] IterableをCollectionに変換する簡単な方法
-
[解決済み】イテレータ、イテラブル、イテレーションとは一体何ですか?
-
[解決済み】Stream<T>がIterable<T>を実装していないのはなぜですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
コマンドによるフォルダの簡単なインクリメンタルバックアップ(win/linux)
-
スクリプトとバッチ処理がひとつに
-
複数のサイトをまとめてよく見たい オススメ度
-
[解決済み】 mean() 警告:引数が数値または論理でない:NAを返す
-
[解決済み] メインループの 'builtin_function_or_method' オブジェクトが反復可能でない
-
[解決済み】例外:AAPT2エラー:詳細はログを確認してください。
-
[解決済み】ggplot2使用時の永続的な無効なグラフィックス状態エラー
-
[解決済み】ポインタと整数の比較を警告する
-
[解決済み】拡張メソッドは、一般的でない静的クラスで定義する必要がある
-
[解決済み】git pullしようとするとエラー: .git/FETCH_HEAD を開けない: パーミッションが拒否される