質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
web.config

web.configはASP.NETウェブアプリケーションの主な設定や構成ファイルを格納するXMLファイルです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

4895閲覧

configからimportしたい

shosinnshadesu

総合スコア93

web.config

web.configはASP.NETウェブアプリケーションの主な設定や構成ファイルを格納するXMLファイルです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2020/10/08 02:53

python

1from email import message 2import smtplib 3 4import config 5 6smtp_host = 'smtp.live.com' 7smtp_port = 587 8from_email = 'xxxx@hotmail.com' 9from_email = config.from_email 10to_email = 'xxxx@hotmail.com' 11to_email = config.to_email 12username = 'xxxx@hotmail.com' 13username = config.user_name 14password = 'asjdnfkjnsfdasd' 15password = config.password 16 17msg = message.EmailMessage() 18msg.set_content('Test email') 19msg['Subject'] = 'Test email sub' 20msg['Form'] = from_email 21msg['To'] = to_email 22 23server = smtplib.SMTP(smtp_host, smtp_port) 24server.ehlo() 25server.starttls() 26server.ehlo() 27server.login(username, password) 28server.send_message(msg) 29server,quit()

udemyのコースで、上のようにコードを書いていて、configにfrom_email,to_email,username,passwordを書いていると言っていたのですが、どのディレクトリに、どのように書けばよいのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

import configとしているという事は、メインで実行しているファイルとは別に[config.py]というファイルを用意しているという事でしょうか?

python

1# config.py 2from_email = 'xxxx@hotmail.com' 3to_email = 'xxxx@hotmail.com' 4username = 'xxxx@hotmail.com' 5password = 'asjdnfkjnsfdasd'

python

1# kkhhkj.py 2from email import message 3import smtplib 4import config 5 6smtp_host = 'smtp.live.com' 7smtp_port = 587 8from_email = config.from_email 9to_email = config.to_email 10username = config.username 11password = config.password

同一フォルダにconfig.ymlやconfig.iniなどが御座いましたので以下はそれらの場合です。
iniファイルを使用する場合

ini

1# config.ini 2[config] 3from_email = xxxx@hotmail.com 4to_email = xxxx@hotmail.com 5[userinfo] 6username = xxxx@hotmail.com 7password = asjdnfkjnsfdasd

python

1# 要 pip install configparser 2import configparser 3 4ini = configparser.ConfigParser() 5ini.read('config.ini') 6from_email = ini['config']['from_email'] 7to_email = ini['config']['to_email'] 8user_name = ini['userinfo']['username'] 9password = ini['userinfo']['password']

yamlを使用する場合

yaml

1config: 2 from_email: 'xxxx@hotmail.com' 3 to_email: 'xxxx@hotmail.com' 4userinfo: 5 username: 'xxxx@hotmail.com' 6 password: 'asjdnfkjnsfdasd'

python

1# 要 pip install pyyaml 2immport yaml 3 4with open('config.yml', 'r') as yml: 5 config = yaml.load(yml) 6 7from_email = config['config']['from_email'] 8to_email = config['config']['to_email'] 9user_name = config['userinfo']['username'] 10password = config['userinfo']['password']

いずれの場合も設定ファイルを別途で用意するという事であれば、同一フォルダが簡略で
同一フォルダ以外を指定する場合には、ファイルを読み込む際にファイルのパスを指定する必要があります。
また、最後のquit()の部分ですが、ピリオドがカンマになってしまっております。ご注意を。

投稿2020/10/08 03:55

nto

総合スコア1438

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問