[python] 파이썬에서 변수와 문자열을 같은 줄에 어떻게 인쇄 할 수 있습니까?

나는 7 초마다 아이가 태어났다면 5 년 동안 몇 명의 아이가 태어날 지 파이썬을 사용하고 있습니다. 문제는 마지막 줄에 있습니다. 텍스트를 인쇄 할 때 변수를 작동 시키려면 어떻게해야합니까?

내 코드는 다음과 같습니다.

currentPop = 312032486
oneYear = 365
hours = 24
minutes = 60
seconds = 60

# seconds in a single day
secondsInDay = hours * minutes * seconds

# seconds in a year
secondsInYear = secondsInDay * oneYear

fiveYears = secondsInYear * 5

#Seconds in 5 years
print fiveYears

# fiveYears in seconds, divided by 7 seconds
births = fiveYears // 7

print "If there was a birth every 7 seconds, there would be: " births "births"



답변

,인쇄하는 동안 문자열과 변수를 구분하는 데 사용하십시오 .

print "If there was a birth every 7 seconds, there would be: ",births,"births"

, print 문에서 항목은 단일 공백으로 구분됩니다.

>>> print "foo","bar","spam"
foo bar spam

또는 문자열 형식을 더 잘 사용하십시오 .

print "If there was a birth every 7 seconds, there would be: {} births".format(births)

문자열 형식화는 훨씬 강력하며 패딩, 채우기, 정렬, 너비, 정밀도 설정 등과 같은 다른 작업도 수행 할 수 있습니다.

>>> print "{:d} {:03d} {:>20f}".format(1,2,1.1)
1 002             1.100000
  ^^^
  0's padded to 2

데모:

>>> births = 4
>>> print "If there was a birth every 7 seconds, there would be: ",births,"births"
If there was a birth every 7 seconds, there would be:  4 births

#formatting
>>> print "If there was a birth every 7 seconds, there would be: {} births".format(births)
If there was a birth every 7 seconds, there would be: 4 births


답변

두개 더

첫번째

 >>>births = str(5)
 >>>print "there are " + births + " births."
 there are 5 births.

문자열을 추가 할 때 연결됩니다.

두 번째

또한 format문자열 의 (Python 2.6 이상) 방법이 표준 방법 일 것입니다.

>>> births = str(5)
>>>
>>> print "there are {} births.".format(births)
there are 5 births.

format방법은 목록과 함께 사용할 수 있습니다

>>> format_list = ['five','three']
>>> print "there are {} births and {} deaths".format(*format_list) #unpack the list
there are five births and three deaths

또는 사전

>>> format_dictionary = {'births': 'five', 'deaths': 'three'}
>>> print "there are {births} births, and {deaths} deaths".format(**format_dictionary) #yup, unpack the dictionary
there are five births, and three deaths


답변

파이썬은 매우 다양한 언어입니다. 다른 방법으로 변수를 인쇄 할 수 있습니다. 아래 4 가지 방법을 나열했습니다. 편의에 따라 사용할 수 있습니다.

예:

a=1
b='ball'

방법 1 :

print('I have %d %s' %(a,b))

방법 2 :

print('I have',a,b)

방법 3 :

print('I have {} {}'.format(a,b))

방법 4 :

print('I have ' + str(a) +' ' +b)

방법 5 :

  print( f'I have {a} {b}')

결과는 다음과 같습니다.

I have 1 ball


답변

파이썬 3으로 작업하고 싶다면 매우 간단합니다.

print("If there was a birth every 7 second, there would be %d births." % (births))


답변

파이썬 3.6부터 리터럴 문자열 보간을 사용할 수 있습니다 .

births = 5.25487
>>> print(f'If there was a birth every 7 seconds, there would be: {births:.2f} births')
If there was a birth every 7 seconds, there would be: 5.25 births


답변

f-string 또는 .format () 메소드 를 사용할 수 있습니다

F- 스트링 사용

print(f'If there was a birth every 7 seconds, there would be: {births} births')

.format () 사용

print("If there was a birth every 7 seconds, there would be: {births} births".format(births=births))


답변

formatstring을 사용할 수 있습니다.

print "There are %d births" % (births,)

또는이 간단한 경우 :

print "There are ", births, "births"