python3的字符串格式化

发布时间:2019-09-26 07:33:19编辑:auto阅读(2092)


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

    不同于Python2.x的


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


    Python3.x是


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


    '{0},{1}'.format('jack',22)

    Out[32]: 'jack,22'


    '{1},{0},{1}'.format('jack',22)

    Out[33]: '22,jack,22'


    '{name},{age}'.format(age=28,name='jack')

    Out[35]: 'jack,28'


    用MySQLdb时,需要用带参数的cursor.execute(sql,param)语句来完成SQL操作。

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

    其中param是一个元组,表示要插入的数据,元组中的各个元素即是数据库中各列的值。

    但是执行起来总是会抛出数据库异常,错误信息:


    【108900】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) 

     




    print 会自动在行末加上回车,如果不需回车,只需在print语句的结尾添加一个逗号”,“,就可以改变它的行为。


    for i in range(0, 6):

        print(i,)


关键字