Python中字符串拼接

目录

 

1."+"拼接

1.1.数据库sql语句拼接参数

2.","拼接

3.直接拼接

4.Join()拼接

1."+"拼接

很多的编程语言都支持使用+号拼接字符串,Python也不例外。但是Python的+号拼接和其他语言是有区别的,比如Java中,+号拼接时不看两边的类型是否一致;Python拼接的话,+号两边类型不一致会报错。如下图所示。

Python中字符串拼接_第1张图片

上图是因为使用+号拼接字符串报错:类型错误:不能连接字符串和int类型。解决办法是:使用str()方法将int类型转换为字符串类型。如下图所示:

Python中字符串拼接_第2张图片

同样的,使用+号拼接字符串和时间也会报错,解决办法也是使用str()方法即可。这是小编今天使用Python编写sql语句时出现的错误,在这里顺便给大家总结下数据库sql语句拼接参数的方法。

1.1.数据库sql语句拼接参数

第一种方法:使用+号。但这种拼接方式会报错,所以写的时候如果两边类型不一致的话要进行转换,代码如下。

pool = PooledDB(MySQLdb, 10, host = 'localhost', user = 'root', passwd = 'root', db = 'test1', port = 3306, charset = 'utf8') 
conn = None
cursor = None
sql = "update message set status=3,sendtime=now() where telephone='"+tel+"' and status="+str(status)+" and time='"+str(time)+"'"
conn = pool.connection()
cursor = conn.cursor()
cursor.execute(sql)
conn.commit()

第二种方法:使用dict类型。将数据封装在字典里面,通过字典传递参数,代码如下。

pool = PooledDB(MySQLdb, 10, host = 'localhost', user = 'root', passwd = 'root', db = 'test1', port = 3306, charset = 'utf8') 
conn = None
cursor = None
sql = "update message set status=3,result='暂时无法检测状态' where telephone=%(tel)s and status=%(status)s and time=%(time)s"
val = {"tel":tel,"status":status,"time":time}
conn = pool.connection()
cursor = conn.cursor()
cursor.execute(sql,val)
conn.commit()

2.","拼接

使用","拼接字符串,两个字符串中间会加一个空格,Python中使用print打印会换行,但是使用","拼接就不换行了。效果如图所示。

Python中字符串拼接_第3张图片

 

3.直接拼接

两个字符串中间空格或不空格进行拼接,如图所示。

 

Python中字符串拼接_第4张图片

4.Join()拼接

join()方法是将序列中的元素以指定的字符连接生成一个新的字符串。如图所示。

 

Python中字符串拼接_第5张图片

 

 

 

 

你可能感兴趣的:(Python)