복붙노트

[PYTHON] print 문 다음에 줄 바꿈을 어떻게 억제 할 수 있습니까?

PYTHON

print 문 다음에 줄 바꿈을 어떻게 억제 할 수 있습니까?

print 문 다음에 줄 바꿈을 표시하지 않으려면 텍스트 뒤에 쉼표를 붙일 수 있습니다. 이 예제는 Python 2와 유사합니다. 어떻게 Python 3에서이 작업을 수행 할 수 있습니까?

예 :

for item in [1,2,3,4]:
    print(item, " ")

같은 줄에 인쇄하기 위해 무엇을 변경해야합니까?

해결법

  1. ==============================

    1.이 질문은 "파이썬 3에서 어떻게 할 수 있습니까?"라고 질문합니다.

    이 질문은 "파이썬 3에서 어떻게 할 수 있습니까?"라고 질문합니다.

    Python 3.x에서이 구문을 사용하십시오 :

    for item in [1,2,3,4]:
        print(item, " ", end="")
    

    그러면 다음과 같이 생성됩니다.

    1  2  3  4
    

    자세한 내용은이 Python 문서를 참조하십시오.

    Old: print x,           # Trailing comma suppresses newline
    New: print(x, end=" ")  # Appends a space instead of a newline
    

    --

    곁에:

    또한 print () 함수는 sep 매개 변수를 제공하므로 개별 항목을 인쇄하는 방법을 지정할 수 있습니다. 예 :

    In [21]: print('this','is', 'a', 'test')  # default single space between items
    this is a test
    
    In [22]: print('this','is', 'a', 'test', sep="") # no spaces between items
    thisisatest
    
    In [22]: print('this','is', 'a', 'test', sep="--*--") # user specified separation
    this--*--is--*--a--*--test
    
  2. ==============================

    2.print는 Python 3.0까지 명령문에서 함수로 전환하지 않았습니다. 구형 Python을 사용하고 있다면 다음과 같이 후행 쉼표로 개행을 억제 할 수 있습니다 :

    print는 Python 3.0까지 명령문에서 함수로 전환하지 않았습니다. 구형 Python을 사용하고 있다면 다음과 같이 후행 쉼표로 개행을 억제 할 수 있습니다 :

    print "Foo %10s bar" % baz,
    
  3. ==============================

    3.파이썬 3.6.1 용 코드

    파이썬 3.6.1 용 코드

    print("This first text and " , end="")
    
    print("second text will be on the same line")
    
    print("Unlike this text which will be on a newline")
    

    산출

    >>>
    This first text and second text will be on the same line
    Unlike this text which will be on a newline
    
  4. ==============================

    4.파이썬 3 print () 함수는 end = ""정의를 허용하기 때문에 대부분의 이슈를 만족시킵니다.

    파이썬 3 print () 함수는 end = ""정의를 허용하기 때문에 대부분의 이슈를 만족시킵니다.

    필자의 경우 PrettyPrint를 원했고이 모듈이 비슷하게 업데이트되지 않았다는 사실에 좌절감을 느꼈습니다. 그래서 나는 그것이 내가 원하는 것을했다 :

    from pprint import PrettyPrinter
    
    class CommaEndingPrettyPrinter(PrettyPrinter):
        def pprint(self, object):
            self._format(object, self._stream, 0, 0, {}, 0)
            # this is where to tell it what you want instead of the default "\n"
            self._stream.write(",\n")
    
    def comma_ending_prettyprint(object, stream=None, indent=1, width=80, depth=None):
        """Pretty-print a Python object to a stream [default is sys.stdout] with a comma at the end."""
        printer = CommaEndingPrettyPrinter(
            stream=stream, indent=indent, width=width, depth=depth)
        printer.pprint(object)
    

    자, 내가 할 때 :

    comma_ending_prettyprint(row, stream=outfile)
    

    나는 내가 원한 것을 얻는다. (당신이 원하는 것을 대신 할 수있다 - 당신의 마일리지가 달라질 수있다)

  5. from https://stackoverflow.com/questions/12102749/how-can-i-suppress-the-newline-after-a-print-statement by cc-by-sa and MIT license