파일을 사용하고 있는데 경로가 포함 된 DIR이라는 섹션이 하나 있습니다. EX는 :INI 파일 - 파이썬에서 쓰는 동안 공백을 제거하는 방법
[DIR]
DirTo=D:\Ashish\Jab Tak hai Jaan
DirBackup = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Backup
ErrorDir = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Error
CombinerDir = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Combiner
DirFrom=D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\In
PidFileDIR = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Pid
LogDir = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Log
TempDir = D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Temp
지금 내가 그것을했을 경로를 바꾸려하지만 교체 할 때 그 후 새로 작성 .ini
파일의 구분 전에 나에게 공간을 제공합니다. 예 : DirTo = D:\Parser\Backup
. 이 공간을 어떻게 제거합니까?
코드 : 당신이 볼 수 있듯이
def write(self, fp):
"""Write an .ini-format representation of the configuration state."""
if self._defaults:
fp.write("[%s]\n" % DEFAULTSECT)
for (key, value) in self._defaults.items():
fp.write("%s = %s\n" % (key, str(value).replace('\n', '\n\t')))
fp.write("\n")
for section in self._sections:
fp.write("[%s]\n" % section)
for (key, value) in self._sections[section].items():
if key != "__name__":
fp.write("%s = %s\n" %
(key, str(value).replace('\n', '\n\t')))
fp.write("\n")
에서, %s = %s\n
포맷은 하드 코딩 된 함수에 있습니다 : 여기
def changeINIfile():
config=ConfigParser.RawConfigParser(allow_no_value=False)
config.optionxform=lambda option: option
cfgfile=open(r"D:\Parser\ERICSSON_CSCORE_STANDARD_VMS\Windows\opx_PAR_GEN_660_ERICSSON_CSCORE_STANDARD_PM_VMS_MALAYSIA.ini","w")
config.set('DIR','DirTo','D:\Ashish\Jab Tak hai Jaan')
config.optionxform=str
config.write(cfgfile)
cfgfile.close()
이 텍스트 줄을 쓰는 데 사용하는 코드를 게시하십시오. Martijn Pieters는'strip()'을 사용하여 문자열의 시작과 끝에서 공백을 제거 할 수 있다고 제안하지만 코드 샘플은 디버깅에 도움이 될 것입니다. –
질문을 편집하여 코드로 업데이트하십시오. –
[원시 문자열] (http://docs.python.org/2/reference/lexical_analysis.html#literals)을 사용하거나 \를 두 번 이스케이프하거나 경로에'os.path.join'을 사용하십시오. 또한 파이썬 코드가 여분의 공백을 만들지는 않으므로 정확히 무엇이 여러분의 질문입니까? –