Request と urljoin
次のコードを実行したときの出力として、正しいものを1つ選べ。
import urllib.request
from urllib.parse import urljoin
req = urllib.request.Request("http://ex.com/a", method="POST")
print(req.get_method(), urljoin("http://ex.com/a/b", "c"))
- A
POST http://ex.com/a/c - B
GET http://ex.com/a/b/c - C
POST http://ex.com/a/b/c - D
POST http://ex.com/c
正解と解説を見る
正解:A
Request に method を指定して、HTTP メソッドを変えられる。urljoin は、基準 URL と相対 URL から絶対 URL を作る。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import urllib.request` | — |
| 2 | `from urllib.parse import urljoin` | — |
| 3 | `req = urllib.request.Request("http://ex.com/a…` | — |
| 4 | `print(req.get_method(), urljoin("http://ex.co…` | — |
| 結果 | 実際の出力 | POST http://ex.com/a/c |
- A
正しい。
urljoinは、基準の URL の最後の要素を置き換えて相対 URL を解決する。 - B
誤り。
method="POST"を指定している。urljoinは最後の要素を置き換える。 - C
誤り。
bは置き換えられる。 - D
誤り。
a/は残る。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。