我需要构建这样的文本链:
outputlayer = 'ogr:dbname=\'/home/user/output/prueba.gpkg\' table=\"prueba\" (geom) sql='
我需要将该路径和文件路径作为参数,但是我不明白如何准确地重构该字符串示例。我已经阅读了如何在引号前插入反斜杠,但仍然不明白。
例如。我在系这个:
trypath = '/this is a path'
outputlayer = 'ogr:dbname' + '\''+ '''trypath'''
...我明白了:
Out[99]: "ogr:dbname'trypath"
...我希望这个
'ogr:dbname=\'/this is a trypath'
我什至都不明白为什么输出将单引号更改为双引号。
假设您使用的是Python 3.6或更高版本,则应使用格式字符串(也称为f字符串)从变量构造字符串。以字母“ f”开头的字符串,然后将所需的任何变量放在大括号{}中。另外,如果您使用单引号作为外引号,则不必转义双引号,反之亦然。
代码:
db_name = "'home/user/output/prueba.gpkg'"
table_name = '"prueba"'
outputlayer = f'ogr:dbname={db_name} table={table_name} (geom) sql='
outputlayer
输出:
'ogr:dbname=\'home/user/output/prueba.gpkg\' table="prueba" (geom) sql='