문자열을 텍스트 파일로 인쇄


653

텍스트 문서를 열기 위해 Python을 사용하고 있습니다.

text_file = open("Output.txt", "w")

text_file.write("Purchase Amount: " 'TotalAmount')

text_file.close()

문자열 변수의 값을 TotalAmount텍스트 문서로 바꾸고 싶습니다 . 누군가이 작업을 수행하는 방법을 알려주십시오.

답변:


1214
text_file = open("Output.txt", "w")
text_file.write("Purchase Amount: %s" % TotalAmount)
text_file.close()

컨텍스트 관리자를 사용하면 파일이 자동으로 닫힙니다.

with open("Output.txt", "w") as text_file:
    text_file.write("Purchase Amount: %s" % TotalAmount)

Python2.6 이상을 사용하는 경우 사용하는 것이 좋습니다. str.format()

with open("Output.txt", "w") as text_file:
    text_file.write("Purchase Amount: {0}".format(TotalAmount))

python2.7 이상에서는 {}대신 사용할 수 있습니다{0}

Python3 file에는 print함수에 대한 선택적 매개 변수가 있습니다.

with open("Output.txt", "w") as text_file:
    print("Purchase Amount: {}".format(TotalAmount), file=text_file)

Python3.6 은 다른 대안을 위해 f- 문자열 을 도입했습니다.

with open("Output.txt", "w") as text_file:
    print(f"Purchase Amount: {TotalAmount}", file=text_file)

2
TotalAmount가 정수라고 가정하면 "% s"가 "% d"이 아니어야합니까?
Rui Curado

6
@RuiCurado는 경우 TotalAmount이며 int, 하나 %d또는 %s같은 일을 할 것입니다.
John La Rooy

2
좋은 대답입니다. 나는 거의 동일한 사용 사례와 구문 오류를보고 있어요 : with . . .: print('{0}'.format(some_var), file=text_file)던지고있다 : SyntaxError: invalid syntax등호에 ...
nicorellius

4
@nicorellius, Python2.x에서 사용 from __future__ import print_function하려면 파일 맨 위에 놓아야 합니다. 이렇게하면 파일의 모든 print 문이 최신 함수 호출로 변환됩니다.
John La Rooy

변수 유형이 무엇인지 종종 확인하기 위해 변수 유형을 확인하려면, 예 : "text_file.write ( '구매 금액 : % s'% str (TotalAmount))"목록, 문자열, 부동 소수점, 정수 및 문자열로 변환 가능한 다른 것.
EBo


29

Python3을 사용하는 경우

그런 다음 인쇄 기능을 사용할 수 있습니다 :

your_data = {"Purchase Amount": 'TotalAmount'}
print(your_data,  file=open('D:\log.txt', 'w'))

python2의 경우

이것은 텍스트 파일로 파이썬 인쇄 문자열의 예입니다

def my_func():
    """
    this function return some value
    :return:
    """
    return 25.256


def write_file(data):
    """
    this function write data to file
    :param data:
    :return:
    """
    file_name = r'D:\log.txt'
    with open(file_name, 'w') as x_file:
        x_file.write('{} TotalAmount'.format(data))


def run():
    data = my_func()
    write_file(data)


run()

19

numpy를 사용하는 경우 한 줄로 단일 (또는 곱하기) 문자열을 파일로 인쇄 할 수 있습니다.

numpy.savetxt('Output.txt', ["Purchase Amount: %s" % TotalAmount], fmt='%s')

13

pathlib 모듈을 사용하면 들여 쓰기가 필요하지 않습니다.

import pathlib
pathlib.Path("output.txt").write_text("Purchase Amount: {}" .format(TotalAmount))

파이썬 3.6부터 f- 문자열을 사용할 수 있습니다.

pathlib.Path("output.txt").write_text(f"Purchase Amount: {TotalAmount}")
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.