with構文について、分からない部分があります。
Qiitaの、以下のコードなのですが、ファイルを開いている訳ではないにも関わらず、何故with構文が使用できるのでしょうか。
import socket import ssl import OpenSSL def get_server_certificate(hostname): context = ssl.create_default_context() with socket.create_connection((hostname, 443)) as sock: with context.wrap_socket(sock, server_hostname=hostname) as sslsock: der_cert = sslsock.getpeercert(True) return ssl.DER_cert_to_PEM_cert(der_cert) cert = get_server_certificate('www.google.com') x509 = OpenSSL.crypto.load_certificate(OpenSSL.crypto.FILETYPE_PEM, cert)
withについて調べてもファイルに関連する説明記事が多く、それ以外はあまり見当たりませんでした。
with構文について、ご助言頂けましたら、幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/12 16:46
2020/06/12 22:53 編集
2020/06/12 23:01 編集