파이썬 스크립트에 변수 x
이 있습니다. 이메일로 x
값을 보내려고합니다. 내 코드python에서 이메일로 변수 값을 보내는 방법
s=smtplib.SMTP('locaolhost')
s.sendmail(FROM, TO, "the answer is x")
이다 그러나 나는 항상 실제 가치 메시지 the answer is x
대신 x
을 얻었다. 어떻게 해결할 수 있을까요?
파이썬 스크립트에 변수 x
이 있습니다. 이메일로 x
값을 보내려고합니다. 내 코드python에서 이메일로 변수 값을 보내는 방법
s=smtplib.SMTP('locaolhost')
s.sendmail(FROM, TO, "the answer is x")
이다 그러나 나는 항상 실제 가치 메시지 the answer is x
대신 x
을 얻었다. 어떻게 해결할 수 있을까요?
s.sendmail(FROM, TO, "the answer is " + str(x))
당신은 먼저 +
에 의해 문자열 "the answer is "
의 끝에 str(x)
을 추가, str(x)
에 의해 문자열로 x
의 값을 변환합니다.
대단히 감사합니다! 이제 작동합니다! – user1224398
또 다른 질문, 이메일 제목을 만드는 방법은 무엇입니까? 지금 아무 주제도 없다. – user1224398
메시지 맨 앞에 제목을 추가해야합니다. 예 : http://effbot.org/pyfaq/how-do-i-send-mail-from-a-python-script.htm –
어디서나 볼 수 있듯이 여기에서 문자열 연결을 사용할 수 있습니다.
s.sendmail(FROM, TO, "the answer is " + x)
아니면 인쇄 형식 구문을 사용할 수 있습니다 :
s.sendmail(FROM, TO, "the answer is {}".format(x))
가 더 읽기 : http://docs.python.org/tutorial/inputoutput.html#fancier-output-formatting
x를 str()처럼 던지기를 피하라.하지만 내 대답에는 % s 포매터를 사용한다. –
% 작업을 편집했습니다. I/O 매뉴얼에서 : "str.format()은 매우 새롭기 때문에 많은 파이썬 코드는 여전히 % 연산자를 사용하지만,이 오래된 형식의 서식이 결국 언어에서 제거되므로 str.format() 일반적으로 사용해야합니다. " – mikaelb
신속한 회신에 감사드립니다. 문제 해결됨. – user1224398
s=smtplib.SMTP('localhost')
s.sendmail(FROM, TO, "the answer is %s" % x) # here is the change
당신은 당신의 문자열에서 %의 포맷을 잊었다!
그래서 :
x = 'hello world'
s.sendmail(FROM, TO, "the answer is x")
출력 : the answer is x
그리고 :
x = 'hello world'
s.sendmail(FROM, TO, "the answer is %s" % x)
출력 : the answer is hello world
귀하의 센드 메일 라인은 다음과 같이해야합니다 :
s.sendmail(FROM, TO, "The answer is "+x)
답장을 보내 주셔서 감사합니다 ~ – user1224398
복잡한 라이브러리를 사용하지만 문자열 형식을 지정하는 방법을 모르십니까? 나는 당신이 물어보기 전에 최소한을 배울 것을 강력히 권고한다. –