1.
typeerror:not all arguments converted during string formatting這個問題一般和格式化有關係,正確的格式應該是:
『delete from %s %s』 % (table_name, where_condition)
其中格式化中接受元組或者list形式內容,因此也可以是
『delete from %s %s』 % [table_name, where_condition]
當我的sql語句是要傳入pandas的read_sql_query中時,我發現怎麼改這個格式化都不起效果後,我檢視了read_sql_query中的所有可以使用引數,其中有params選項,即將%s中的資料以params傳入的方式實現,此時驗證報錯問題也得到了解決:
pd.io.sql.read_sql_query(sql, con=engine, params=[...])
def
remove_data
(table_name, where_condition):
if (where_condition != ' '):
str = 'where '
for key_value in where_condition.keys():
value = where_condition[key_value]
str = str + '`' + key_value + '`' + ' = ' + '\'' + value + '\'' + ' and '
where_condition = str[:-5]
table_name = '`'+table_name+'`'
sql = 'delete from %s %s' % (table_name, where_condition)
# print(sql)
return sql
在應用中再進行:
try:
pd.io.sql.read_sql_query(sql, con=engine)
except:
print('deleted ')
3.這是乙個關於mysql規範的問題。
(1)mysql不建議表名純數字,因此sql中表名直接是數字的話需要帶有`符號,也就是1鍵的前乙個鍵,同樣欄位不建議有帶『-』,但是如果需求上需要的話也可以帶`即可
delete from `201501` where `zon-order-id` = '113-2826971'
python 提示錯誤 python錯誤筆記
1.print hello world syntaxerror missing parentheses in call to paint did you mean print hello world 在呼叫 paint 時缺少圓括號。上面的語法在python3中是錯誤的。在python3中,你需要將...
python程式設計學習筆記(雜學)
seed a none 給定隨機數種子,預設為當前系統時間 random.seed 10 產生種子10對應的序列 random.random 生成乙個的隨機小數 import random random.seed 10 給定種子 random.random 種子相同得到的隨機數也相同randint ...
Python 3 x 學習筆記 雜
在互動式環境中,編譯器會有乙個小整數池的概念,會把 5,256 間的數預先建立好,而當a和b超過這個範圍的時候,兩個變數就會指向不同的物件了,因此位址也會不一樣,在互動模式中,最後被輸出的表示式結果被賦值給變數 此處,變數應被使用者視為唯讀變數。python 所謂的奇進偶棄,因為浮點數的表示在計算機...