0
看起來類似的問題已被提出,但我沒有找到答案。如何在for循環中將python變量作爲sqlite列名傳遞
城市列表中的城市在數據庫中具有相應的列名稱。我試圖用pyowm找到一個特定城市的壓力,然後將該值插入到適當的列中。
錯誤在於沒有名爲「city」的列。我可以看到問題是什麼,但不知道如何解決。任何幫助是極大的讚賞!
import pyowm
import sqlite3
conn = sqlite3.connect(r"C:\Users\Hanley Smith\Desktop\machinelearning\pressure_table.db")
cursor = conn.cursor()
owm = pyowm.OWM('eb68e3b0c908251771e67882d7a8ddff')
cities = ["tokyo", "jakarta"]
for city in cities:
weather = owm.weather_at_place(city).get_weather()
pressure = weather.get_pressure()['press']
cursor.execute("INSERT INTO PRESSURE (city) values (?)", (pressure,))
conn.commit()
你只是試圖用一個變量作爲列名或價值更清潔的方式嗎? –
@StevenByrne列名稱的變量應該是「城市」列表中的「城市」。該值的變量應該是for循環中定義的「壓力」 –