Quantcast
Channel: Active questions tagged python - Stack Overflow
Viewing all articles
Browse latest Browse all 23131

How to fix ArgumentError: List argument must consist only of tuples or dictionaries?

$
0
0

This is my method:

def print_relative_strength_by_ticker(self, tickers): # print relative strength    tickers_list = tickers.split(" ")    if len(tickers_list) == 1:        query = "SELECT ticker, rs FROM companyinfo WHERE ticker = %s"        params = [tickers_list[0]]  # Wrap the single ticker in a list or a tuple    else:        query = "SELECT ticker, rs FROM companyinfo WHERE ticker IN %(tickers_tuple)s" # The key 'tickers' is a string that represents the named parameter in the SQL query (%(tickers)s)        params = {'tickers_tuple': tuple(tickers_list)} # creates a dictionary with a single key-value pair    df = self.db.read_sql(query, params=params)    for index, row in df.iterrows():        print("Ticker:", row['ticker'], "\tRS:", row['rs'])

I updated Spyder but did not make any changes to my code. Now I'm getting an error; I've never had one before, and I'm not sure if it's sqlachemly or not; how can I handle this?

s.print_relative_strength_by_ticker('estc')Traceback (most recent call last):  Cell In[27], line 1    s.print_relative_strength_by_ticker('estc')  File D:\Stocks/Code\stock_analysis_class.py:111 in print_relative_strength_by_ticker    df = self.db.read_sql(query, params=params)  File D:\Stocks/Code\mysql_class.py:33 in read_sql    df = pd.read_sql(query, conn, params=params, index_col=index_col)  File C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\sql.py:682 in read_sql    return pandas_sql.read_query(  File C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\sql.py:1776 in read_query    result = self.execute(sql, params)  File C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\sql.py:1599 in execute    return self.con.exec_driver_sql(sql, *args)  File C:\ProgramData\Anaconda3\lib\site-packages\sqlalchemy\engine\base.py:1767 in exec_driver_sql    distilled_parameters = _distill_raw_params(parameters)  File lib\\sqlalchemy\\cyextension\\util.pyx:38 in sqlalchemy.cyextension.util._distill_raw_params  File lib\\sqlalchemy\\cyextension\\util.pyx:17 in sqlalchemy.cyextension.util._check_itemArgumentError: List argument must consist only of tuples or dictionaries

Viewing all articles
Browse latest Browse all 23131

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>