多個部分我有一個數據庫:拆分可變長度字符串轉換成在python
正如你可以在「說明」一欄看到,該文本是可變長度(意味着沒有兩個字符串我的從這個數據庫拉將會是相同的長度)。我最終會在這個數據庫中添加更多條目,但這是我正在測試的內容,現在開始。
現在,我有以下Python代碼搶串的這些塊,並顯示它們:
cmd = input(Enter command:)
sql = "SELECT cmd,`desc` FROM table WHERE cmd = '"+ cmd +"'"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print("Command: "+ row[0] +":\n")
print("Description: "+ row[1][:40] +"\n")
if (len(row[1]) > 40):
print(row[1][40:85])
if (len(row[1]) > 85):
print(row[1][85:130])
if (len(row[1]) > 130):
print(row[1][130:165])
if (len(row[1]) > 165):
print(row[1][165:])
這裏的拆分工作到一定程度,例如:
命令:關閉:
說明:該命令將在調用char
acter的消息窗口中創建'close',但將生成
n。如果當前沒有窗口在屏幕上,那麼腳本執行將結束。
正如您在上面的輸出示例中看到的那樣,分割會導致某些字符在中間詞中被截斷。鑑於這些字符串的長度可能在20個字符之間,最多爲190個字符之間,我想將字符串分成幾塊......每個字8個字,因爲空間限制,我將如何去關於這樣做?
使用參數替換而不是手動構建sql字符串,例如'cursor.execute('select * from cmd =?',(cmd,))''。你不需要調用'cursor.fetchall()'你可以直接遍歷它:'對於遊標中的行:...' – jfs 2012-01-16 00:18:13