回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>所以我在python中遇到了一个问题:我试图创建一个字符串,我可以使用操作系统关于python。我的目标是对数量可变的输入文件使用此操作:</p>
<pre><code>os.system('gdal_calc.py -A {0} -B {1} -C {2} --outfile={4} --calc="(1-A)(1-B)(1-C)" '.format(File1, File2, File3, outputfile))
</code></pre>
<p>我的函数是这样的:</p>
<pre><code>def Mergefilesforoperation(Inputfiles= None):
ABC = ["A","B","C","D","E","F","G","H","I","J","K",
"L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
partstring = []
for i in range(len(Inputfiles)-1):
partstring.append(" -" + ABC[i] + " '" + Inputfiles[i] + "'")
wholestring = "".join(partstring)
outputfile = 'outputfile.tif'
operationstring = "gdal_calc.py" + wholestring + " --outfile= {0}".format(outputfile) + ' --calc="(1-A)*(1-B)*(1-C)*(1-D)"'
return wholestring, operationstring
</code></pre>
<p>但当我把它还给你的时候:</p>
<pre><code>File1 = '/home/File1.tif' File2 = '/home/File2.tif' File3 = '/home/File3.tif'
Mergefilesforoperation(Inputfiles=[File1, File2, File3])
</code></pre>
<p>它提供以下输出:</p>
<pre><code>Wholestring = " -A '/home/File1.tif' -B '/home/File2.tif' -C '/home/File3.tif'"
operationstring = 'gdal_calc.py -A \'/home/File1.tif\' -B \'/home/File2.tif\' -C \'/home/File3.tif\' --outfile= outputfile.tif --calc="(1-A)(1-B)(1-C)"')
</code></pre>
<p>如何去掉“operationstring”中字母表后面的\符号?你知道吗</p>