[Tutor] new line to list of strings send by email
Hello list, I have a function which receives a string and sends it as a body of an email. It is a part of a program which does certain checks on network infrastructure. When a check fails I append error message to a error_collector list: if self.check_axfr_refused(ip): error_collector.append('%s:%s AXFR test for %s FAILED' % (ns, ip, self.domainname)) At the end I send the alert like this: if len(error_collector) != 0: email_body = str(error_collector) email_alert(email_body) The problem is the resulted email (expectedly) has the alert message as one long string. ['pdns6.ultradns.co.uk.:204.74.115.1 AXFR test for amazon.com FAILED', 'pdns6.ultradns.co.uk.:2610:a1:1017::1 AXFR test for amazon.com FAILED', 'ns4.p31.dynect.net.:204.13.251.31 AXFR test for amazon.com FAILED',...] I tried adding '\n' to end of each string error_collector collects, but then these were simply added to the resulted email. What I want to achieve is that each collected error is shown on a separate line in the email. Any advice will be well appreciated. Here is the email sending function if in interest: def email_alert(message, recipient=DEFAULT_RECIPIENT, subject_prefix=''): ''' Send email alert. ''' # check if we are running in quiet mode if QUIET.lower() == 'yes': return msg = MIMEText(message) msg['From'] = SENDER msg['To'] = recipient msg['Subject'] = subject_prefix + SUBJECT s = smtplib.SMTP(SMTP_SERVER) s.send_message(msg) s.quit() Emil ___ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Hi Dear!
On Thu, Feb 4, 2016 at 2:49 PM, Alexa kun wrote: > Hi Dear! > I newbie and read 2.1.2. Interactive Mode > https://docs.python.org/3/tutorial/interpreter.html > > but when I type > > >>> the_world_is_flat = True > >>> if the_world_is_flat: > ... print("Be careful not to fall off!") > > I got answer > > IndentationError: expected an indented block > > [root@localhost /]# python3 > Python 3.4.3 (default, Jun 29 2015, 12:15:26) > [GCC 5.1.1 20150618 (Red Hat 5.1.1-4)] on linux > Type "help", "copyright", "credits" or "license" for more information. > > >>> the_world_is_flat = True > >>> if the_world_is_flat: > ... print(Be careful not to fall off!) > File "", line 2 > print(Be careful not to fall off!) > ^ > IndentationError: expected an indented block > >>> > > You should have the print function indented, usually by 4 spaces. This is how Python knows which commands to be executed as part of the if block. So this is what you'll make your code work: >>> the_world_is_flat = True >>> if the_world_is_flat: ... print("Be careful not to fall off!") ... Be careful not to fall off! The interpreter also tries to help you, it puts ... at the begging of the line (instead of >>>) which means it expect some indentation. Emil I have installed Python3 in Linux Fedora 23 > Please tell my why Python3 doesn't work? > > Sincerely! > Alexander > ___ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > https://mail.python.org/mailman/listinfo/tutor > ___ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] beginning encryption
if char != alphabet: should be if char not in alphabet: Otherwise you are comparing char with alphabet. What you want to do if to check if char is in alphabet. Emil On Thu, Apr 19, 2018 at 2:39 AM, Roger Lea Scherer wrote: > I am absolutely stumped. I've tried a number of different scenarios and > copied the answer more than I like, but I still can't figure this out. I > don't want to copy the answer verbatim because then I won't learn. > > I'm doing the beginning cipher, mix up the letters routine. I get the > entire Gettysburg address with no alterations in this form of the code (and > a few others I've tried). I do not receive any error, but I expect the > character in the Gettysburg address to change to the index position in the > encryption variable. > > What am I not getting? > > Thank you as always. > > > > address = """Four score and seven years ago our fathers brought forth on > this continent, a new nation, > conceived in Liberty, and dedicated to the proposition that all men are > created equal. > Now we are engaged in a great civil war, testing whether that nation, or > any nation so conceived > and so dedicated, can long endure. We are met on a great battle-field of > that war. We have come > to dedicate a portion of that field, as a final resting place for those who > here gave their lives that > that nation might live. It is altogether fitting and proper that we should > do this. > But, in a larger sense, we can not dedicate -- we can not consecrate -- we > can not hallow -- this ground. > The brave men, living and dead, who struggled here, have consecrated it, > far above our poor power > to add or detract. The world will little note, nor long remember what we > say here, but it can never > forget what they did here. It is for us the living, rather, to be dedicated > here to the unfinished work > which they who fought here have thus far so nobly advanced. It is rather > for us to be here dedicated > to the great task remaining before us -- that from these honored dead we > take increased devotion > to that cause for which they gave the last full measure of devotion -- that > we here highly resolve > that these dead shall not have died in vain -- that this nation, under God, > shall have a new birth > of freedom -- and that government of the people, by the people, for the > people, shall not perish > from the earth.""" > > alphabet = "abcdefghijklmnopqrstuvwxyz" > encryption = "nopqrstuvwxyzabcdefghijklm" > > > def encryptor(address): > encrypted = "" > for char in address: > if char != alphabet: > encrypted += char > else: > pos = alphabet.index(char) > encrypted += encryption[pos] > print(encrypted) > > encryptor(address) > > > -- > Roger Lea Scherer > 623.255.7719 > ___ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > https://mail.python.org/mailman/listinfo/tutor > ___ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor