首页 > 解决方案 > 连接多个字符串时,python为什么要加括号?

问题描述

我正在尝试连接 3 个字符串,但是在尝试执行此操作时,结果字符串意外地以括号字符开头和结尾。如果它们不是源字符串变量中的字符,为什么要添加这些?

我尝试了许多不同的方法: 1. 使用 + 连接 2. 使用 .format() 字符串方法

我的代码:

startdate = '2019-05-08 11:18'
enddate = '2019-05-08 11:33'
user = 'usermcuserton@user.com'

mystring = ("({0}<= CreationDate <= {1}) AND Creator = '{2}'").format(startdate,enddate,user)

结果是这样的:

print mystring
('(2019-05-08 11:18<= CreationDate <= 2019-05-08 11:33) AND Creator = '
 "'usermcuserton@user.com'")

为什么将这些括号添加到字符串的开头和结尾?

标签: python-3.x

解决方案


您的代码中有错误的引号。并且打印命令是错误的。我运行了正确的代码,我在下面发布了它,它工作正常。没有额外的括号。

startdate = '2019-05-08 11:18'
enddate = '2019-05-08 11:33'
user = 'usermcuserton@user.com'

mystring = '({0}<= CreationDate <= {1}) AND Creator = 
{2})'.format(startdate,enddate,user)

print(mystring)

输出:

(2019-05-08 11:18<= CreationDate <= 2019-05-08 11:33) AND Creator = ''usermcuserton@user.com)

编辑:如果您也不希望在输出中出现这些括号,则将它们从您声明 mystring 的字符串中删除。

mystring = '{0}<= CreationDate <= {1}) AND Creator = 
{2}'.format(startdate,enddate,user)

推荐阅读