ファイル名が見つからないというエラーが出てしまい対処法が分かりません。
実行引数を指定するプログラムなのですが、引数がない時は実行されて、実行引数がない時のエラーが出ます。
つまり実行引数を入れて実行した時のみ、ファイルが見つからないエラーが出ます。
もちろん、パスもあっていてカレントパスにファイルはあります。フルパスも指定しましたが変わりませんでした。
以下がコードになります
Python
1import smtplib, getpass, sys 2 3smtp_obj = smtplib.SMTP("smtp.gmail.com", 587) 4try: 5 smtp_obj.ehlo() 6 smtp_obj.starttls() 7except Exception as e: 8 print("Error occured") 9 #print("Error message: " + e) 10 11my_email = sys.argv[1] 12my_pass = sys.argv[2] 13recipient_mail = sys.argv[3] 14subject = sys.argv[4] 15body = sys.argv[5] 16 17# print("Please type gmail address you want to login") 18# mail = input("gmail: ") 19# print("Please type App password for your gmail account") 20# app_pss = input("app pass: ") 21 22try: 23 smtp_obj.login(my_email, my_pass) 24except Exception as e: 25 print("Error occured while logging in") 26 #print("Error message: " + e) 27 28 29try: 30 smtp_obj.sendmail(my_email, recipient_mail, "Subject: {0}.\ {1}".format(subject,body)) 31except Exception as e: 32 print("Error occured while sending message") 33 #print("Error message: " + e) 34 35
引数を入れない時のエラー
(base) username$ python3 smtp_send.pyTraceback (most recent call last): File "smtp_send.py", line 11, in <module> my_email = sys.argv[1] IndexError: list index out of range
引数を入れた時のエラー
(base)username$ python3 /Users/username/Documents/python_test/mail_server/smtp_send.py, mymail@mail, mypassowrd, recipientmail@mail, so long, Dear Alice How have you been? python3: can't open file '/Users/username/Documents/python_test/mail_server/smtp_send.py,': [Errno 2] No such file or directory
よろしくお願いします
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/27 01:52