Python3.x版本中新的字符串格式化方法

yipeiwu_com6年前Python基础

我们知道Python3.x引入了新的字符串格式化语法。不同于Python2.x的

复制代码 代码如下:

"%s %s "%(a,b) 

Python3.x是
复制代码 代码如下:

"{0} {1}".format(a,b) 

今天我在用MySQLdb时,需要用带参数的
复制代码 代码如下:

cursor.execute(sql,param) 

语句来完成SQL操作。被其他文章的陈旧说法给误导,用了

复制代码 代码如下:

cursor.execute('insert into test values(%s,%s,%s)',param) 

其中param是一个元组,表示要插入的数据,元组中的各个元素即是数据库中各列的值。
但是执行起来总是会抛出数据库异常,错误信息:
复制代码 代码如下:

【1064】You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near'(%s,%s,%s)'at line……(以下省略)。

其实只要改成这样就好:
复制代码 代码如下:

cursor.execute('insert into test values({0},{1},{2})',param) 

实话说,Python3为了填上Python2的各坑导致了不向下兼容,使得学习Python3的成本提高了不少。但是为了不阻碍科技发展、社会进步,我还是毅然决然投身新版本……

相关文章

python shutil文件操作工具使用实例分析

这篇文章主要介绍了python shutil文件操作工具使用实例分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python中的s...

Python二叉搜索树与双向链表转换算法示例

本文实例讲述了Python二叉搜索树与双向链表转换算法。分享给大家供大家参考,具体如下: 题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,...

django2 快速安装指南分享

1. 安装 作为一个 Python Web 框架,Django需要Python的支持。请参阅 我可以在Django中使用哪些Python版本?了解详情。Python包含一个名为SQLit...

PyCharm在新窗口打开项目的方法

PyCharm在新窗口打开项目的方法

File->Setting 找到Appearance & Behavior -->System Setting,在右边窗口中选择 Open project in new wi...

python 中如何获取列表的索引

1.index方法 list_a= [12,213,22,2,32] for a in list_a: print(list_a.index(a)) 结果: 0 1 2 3...