以下是我的代码(当前):
conn = sqlite3.connect(db)
conn.text_factory = str #bugger 8-bit bytestrings
cur = conn.cursor()
reader = csv.reader(open(csvfile, "rU"), delimiter = '\t')
for Number, Name, Message, Datetime, Type in reader:
# populate subscriber table
if str(Number)[0] == '1': # errors on this line
tmpNumber = str(Number)[1:]
Number = int(tmpNumber)
cur.execute('INSERT OR IGNORE INTO subscriber (name, phone_number) VALUES (?,?)', (Name, Number))
cur.close()
conn.close()
它在注释行返回此错误,以指示错误所在:
^{pr2}$所有的号码都有值,但是如果电话号码以1开头,我想在将其插入数据库之前删除1。为什么这行不通?在尝试引用第一个字符之前,我已经将它转换为一个字符串,所以我不明白为什么这不起作用。在
好像你得到了一个空字符串。尝试用下面的语句替换if语句,看看它是否有效。在
(经过编辑以反映@kindall建议使用})。在
startswith
而不是切片{相关问题 更多 >
编程相关推荐