用Python创建的bash文件中的引号

时间:2018-06-20 06:13:39

标签: python string bash pandas quotes

我正在使用Python和Pandas编写多个bash脚本。我有一个包含脚本的pandas.Series。简化::

script = pd.Series([
'#!/bin/bash',
'#SBATCH --output "/home/path/output_filename.out"'
])

然后我使用script.to_csv('script_file.bat',index=False)创建文件。 输出文件如下所示:

#!/bin/bash
"#SBATCH --output ""/home/path/output_filename.out"""

我已经尝试了Python - Using quotation marks inside quotation marks处的所有建议(三重引号,单引号和双引号(如示例中所示),转义引号),以及将引用的文本设置为变量,但是没有用。

1 个答案:

答案 0 :(得分:1)

可以显式指定df.to_csv的引用:

import csv

pd.DataFrame(script).to_csv("test.sh", index=False, header=False,
                            quoting=csv.QUOTE_NONE)

> #!/bin/bash
> #SBATCH --output "/home/path/output_filename.out"