Как изменить код Python для создания нескольких значений для одного параметра? - PullRequest
0 голосов
/ 02 апреля 2019

Мне нужно вставить все значения (msg_body1, msg_body2, msg_body3) в строку: с = msg_body1.get ( '1.0', КОНЕЦ) Как я могу это сделать?

def layout():
    global msg_body1
    msg_label1=Label(f,text='Message+')
    msg_body1=Text(f,height=0,width=35,bd=3)

    global msg_body2
    msg_label2=Label(f,text='Message-')
    msg_body2=Text(f,height=0,width=35,bd=3)

    global msg_body3
    msg_label3=Label(f,text='Message-+')
    msg_body3=Text(f,height=0,width=35,bd=3)


def mail(): 
    try:
       server=smtplib.SMTP('smtp.gmail.com',587)
       server.starttls()
       a=send_email.get()
       b=send_pass.get()
       c=msg_body1.get('1.0',END)
       d=recv_email.get()
       server.login(a,b)
       server.sendmail(a,d,c)
       server.close()

Ответы [ 3 ]

1 голос
/ 02 апреля 2019

будет ли это работать для вас?

def mail(): 
    try:
       server=smtplib.SMTP('smtp.gmail.com',587)
       server.starttls()
       a=send_email.get()
       b=send_pass.get()
       c=msg_body1.get('1.0',END)+msg_body2.get('1.0',END)+msg_body3.get('1.0',END)
       d=recv_email.get()
       server.login(a,b)
       server.sendmail(a,d,c)
       server.close()
0 голосов
/ 02 апреля 2019

Я бы предложил

c = ''.join([
    msg_body1.get('1.0',END),
    msg_body2.get('1.0',END),
    msg_body3.get('1.0',END),
])
0 голосов
/ 02 апреля 2019

Вы имеете в виду что-то вроде этого

c = f'{msg_body1.get("1.0", END)} {msg_body2.get("2.0", END)} {msg_body3.get("3.0", END)}'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...