【问题标题】:Error: main loop can only concatenate tuple (not "str") to tuple错误:主循环只能将元组(不是“str”)连接到元组
【发布时间】:2015-06-17 16:45:11
【问题描述】:

基本上尝试将本教程修改为 Currency's 而不是 股票:http://pythonprogramming.net/advanced-matplotlib-graphing-charting-tutorial/

用我当前的代码我得到:

Error: main loop can only concatenate tuple (not "str") to tuple

代码:

import urllib2
import time



CurrencysToPull = 'audusd','eurusd','usdcad'

def pullData(Currency):
    try:
        fileline = Currency+'.txt'
        urlToVisit = 'http://finance.yahoo.com/echarts?s=Currency=X#{"allowChartStacking":true}/'+Currency+'/chartdata;type=quote:range=1y/csv'
        sourcecode = urllib2.urlopen(urlToVisit).read()
        splitSource = sourcecode.split('\n')

        for eachLine in splitSource:
            splitLine = eachLine.split(',')
            if len(splitLine)==6:
                if 'valuse' not in eachLine:
                    saveFile = open(fileLine,'a')
                    lineToWrite = eachLine+'\n'
                    saveFile.write(lineToWrite)
        print 'Pulled', Currency
        print 'sleeping'
        time.sleep(1)

    except Exception,(e):
        print('main loop'), str(e)

for eachStock in CurrencysToPull:
    pullData(CurrencysToPull)

【问题讨论】:

    标签: python loops matplotlib stocks


    【解决方案1】:

    您正在将 CurrencysToPull 元组传递给您的函数:

    for eachStock in CurrencysToPull:
        pullData(CurrencysToPull)
    

    然后您尝试将字符串连接到:

    fileline = Currency+'.txt'
    

    您可能是想传入eachStock

    for eachStock in CurrencysToPull:
        pullData(eachStock)
    

    【讨论】:

    • @LibertySIlver:你只是在没有其他代码的情况下运行我的循环吗?
    【解决方案2】:

    错误在这一行: fileline = Currency+'.txt' 货币是一个元组,.txt 是一个字符串

    在您的 for 循环中,您传递的是 CurrencysToPull 而不是 eachStock。 应该是:

    for eachStock in CurrencysToPull:
    

    您可以在异常处理中使用回溯获得有关错误的更好信息。

    except Exception,(e):
        print('main loop'), str(e)
        print(traceback.format_exc())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-11
      • 1970-01-01
      • 1970-01-01
      • 2019-05-13
      • 2022-01-11
      • 2013-10-04
      相关资源
      最近更新 更多