我有一本字典有一些字符串,其中一个字符串中有两个反斜杠。我想用一个反斜杠代替它们。在
这些是反斜杠:IfNotExist\\u003dtrue
Configurations = {
"javax.jdo.option.ConnectionUserName": "test",
"javax.jdo.option.ConnectionDriverName": "org.mariadb.jdbc.Driver",
"javax.jdo.option.ConnectionPassword": "sxxxsasdsasad",
"javax.jdo.option.ConnectionURL": "jdbc:mysql://hive-metastore.cr.eu-west-1.rds.amazonaws.com:3306/hive?createDatabaseIfNotExist\\u003dtrue"
}
print (Configurations)
当我打印时,它总是显示两个反斜杠。我知道转义反斜杠的方法是使用\ this在常规字符串中有效,但在字典中不起作用。在
有什么想法吗?在
打印字典将显示dictionary对象的表示形式。它不一定向你展示它里面所有的东西。要做到这一点:
当你用
print (Configurations)
,它将打印出字典的repr()值你会得到
{'javax.jdo.option.ConnectionDriverName': 'org.mariadb.jdbc.Driver', 'javax.jdo.option.ConnectionUserName': 'test', 'javax.jdo.option.ConnectionPassword': 'sxxxsasdsasad', 'javax.jdo.option.ConnectionURL': 'jdbc:mysql://hive-metastore.cr.eu-west-1.rds.amazonaws.com:3306/hive?createDatabaseIfNotExist\\u003dtrue'}
你需要用
print (Configurations["javax.jdo.option.ConnectionURL"])
或者
print (str(Configurations["javax.jdo.option.ConnectionURL"]))
注:str()增加那么输出将是
jdbc:mysql://hive-metastore.cr.eu-west-1.rds.amazonaws.com:3306/hive?createDatabaseIfNotExist\u003dtrue
有关详细信息,请查看Python Documentation - Fancier Output Formatting
问题来自编码。在
实际上,}的UNICODE表示。在
\u003d
是{反斜杠被另一个反斜杠转义了,这是件好事。在
您可能需要:
将
\u003d
替换为=
将其读作unicode,然后应该在字符串前面加上
u
,比如u"hi \\u003d"
可能没问题相关问题 更多 >
编程相关推荐