답변:
%
문자열 형식을 지정 하는 구문이 오래되었습니다. 파이썬 버전에서 지원한다면, 다음과 같이 작성해야합니다 :
instr = "'{0}', '{1}', '{2}', '{3}', '{4}', '{5}', '{6}'".format(softname, procversion, int(percent), exe, description, company, procurl)
또한 발생한 오류를 수정합니다.
형식 인수를 튜플에 넣어야합니다 (괄호 추가).
instr = "'%s', '%s', '%d', '%s', '%s', '%s', '%s'" % (softname, procversion, int(percent), exe, description, company, procurl)
현재 가지고있는 것은 다음과 같습니다.
intstr = ("'%s', '%s', '%d', '%s', '%s', '%s', '%s'" % softname), procversion, int(percent), exe, description, company, procurl
예:
>>> "%s %s" % 'hello', 'world'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: not enough arguments for format string
>>> "%s %s" % ('hello', 'world')
'hello world'
%
형식 문자열에서 백분율 문자로 사용할 때 동일한 오류가 발생 했습니다. 이에 대한 해결책은를 두 배로 늘리는 것 %%
입니다.
"foo: %(foo)s, bar: s(bar)% baz: %(baz)s" % {"foo": "FOO", "bar": "BAR", "baz": "BAZ"}