Python 3エンジニア認定基礎試験~模擬試験~ 2024年11月20日 ailearn 1. raise文の役割として正しいものを選んでください。 明示的に例外を発生させる 例外をキャッチする 例外を無視する 例外を記録する None 2. 次のうち、unittestでテストを実行するために使用される標準的なコマンドとして正しいものを選んでください。 python -test unittest python -m unittest pytest unittest run unittest None 3. 次のコードの出力は何ですか? data = [[100, 200, 300], [400, [500, 600]], [700]]print(data[1][1][1]) 400 600 700 500 None 4. 次のコードを実行した場合、headers変数に含まれるデータとして正しいものを選んでください。 import urllib.requestreq = urllib.request.Request("https://www.example.com")response = urllib.request.urlopen(req)headers = dict(response.getheaders())print(headers) HTTPリクエストヘッダーのキーと値を持つ辞書 HTTPレスポンスヘッダーのキーと値を持つ辞書 HTTPレスポンスボディの内容 レスポンスのステータスコード None 5. 次のコードを実行した場合、仮想環境の有効化が確認できる出力として正しいものを選んでください。 $ python -m venv env$ source env/bin/activate 仮想環境のディレクトリ構造が表示される 仮想環境のPythonバージョンが表示される (env)がプロンプトに表示される エラーが発生する None 6. 次のコードを実行したときの出力結果は何でしょうか? a = 3b = 5result = "aとbは等しい" if a == b else "aはbより小さい" if a < b else "aはbより大きい"print(result) aとbは等しい aはbより小さい aはbより大きい エラーが発生します None 7. Pythonのディクショナリについて正しいものを選んでください。 ディクショナリのキーにはリストを使用できる。 ディクショナリのキーにはタプルを使用できる。 ディクショナリのキーには変更可能な型を使用できる。 ディクショナリのキーには重複した値を持たせることができる。 None 8. 次のコードの実行結果を選んでください。 # パッケージ構造:# package/# ├── __init__.py# ├── subpackage/# │ ├── __init__.py# │ ├── module.py# module.pydef greet():return "Greetings from module!"# main.pyfrom package.subpackage import moduleprint(module.greet()) Greetings from module! Error: greet not found エラーが発生する None None 9. 次のコードを実行した場合の出力として正しいものを選んでください。 from datetime import datetimedate = datetime(2024, 2, 29)days_to_add = 365new_date = date.replace(year=date.year + 1) + timedelta(days=days_to_add - 1)print(new_date.strftime("%Y-%m-%d")) 2025-02-28 2025-03-01 2025-02-29 エラーが発生する None 10. 次のコードを実行したときの出力結果は何でしょうか? text = "Python"for char in text:print(char, end="-") P-y-t-h-o-n Python P y t h o n Pyt-hon None 11. 次のコードの問題点として正しいものを選んでください。 if Trueprint("This is true") コロン(:)が欠けている インデントが不正である printの括弧が間違っている 構文に問題はない None 12. 次のコードの実行結果を選んでください。 try:raise TypeError("Custom type error")except KeyError as e:print("Caught KeyError:", e)except Exception as e:print("Caught Exception:", e) "Caught Exception: Custom type error" "Caught KeyError: Custom type error" エラーが発生してプログラムが停止する 何も出力されない None 13. 次のコードの実行結果を選んでください。 class MyClass:@classmethoddef greet(cls):return "Hello from class method"print(MyClass.greet()) エラーが発生する 何も出力されない "Hello from class method" "Hello from instance method" None 14. 次のコードを実行した場合、出力は何ですか? from collections import dequedq = deque([1, 2, 3, 4], maxlen=4)dq.append(5)print(dq) deque([1, 2, 3, 4]) deque([5, 2, 3, 4]) deque([2, 3, 4, 5]) エラー None 15. 次のコードの実行結果を選んでください。 # ファイル名: sample.txt# 初期内容:# ---# Line1# Line2# ---with open('sample.txt', 'r+') as f:f.seek(6)f.write("Modified")f.seek(0)print(f.read()) Line1 Modif Line1 Modified Line1 ModifiedLine2 エラーが発生する None 16. dequeで要素を先頭に追加するメソッドはどれですか? append prepend appendleft insert None 17. 変数aが正で、変数bが負である場合に「条件を満たします」と表示するコードはどれでしょうか? print("条件を満たします" if a > 0 or b < 0 else "条件を満たしません") print("条件を満たしません" if a > 0 and b < 0 else "条件を満たします") print("条件を満たします" if a <= 0 and b < 0 else "条件を満たしません") print("条件を満たします" if a > 0 and b < 0 else "条件を満たしません") None 18. 次のコードの出力結果は何でしょうか? queue = []for i in range(1, 4):queue.append(i)for _ in range(2):queue.pop(0)print(queue) [1, 2, 3] [2, 3] [1] [3] None 19. 次のコードについて、正しい実行結果を選んでください。 class MyClass:def __init__(self, value):self.value = valueobj = MyClass(5)print(obj.value) None 0 5 エラーが発生する None 20. 次のコードについて、glob.glob("data/**", recursive=True)が返す結果として正しい説明を選んでください。 import globresult = glob.glob("data/**", recursive=True) dataディレクトリ以下のすべてのファイルとディレクトリのリスト dataディレクトリ内のファイルのみのリスト dataディレクトリ内のディレクトリのみのリスト エラーが発生する None 21. 次のコードを実行したときの出力結果は何でしょうか? def extend_list(item, target=None):if target is None:target = []target.append(item)return targetlist1 = extend_list(1)list2 = extend_list(2, [])list3 = extend_list(3)print(list1)print(list2)print(list3) [1] [2] [3] [1, 3] [2] [3] [1] [2] [1, 3] None 22. 次のコードを実行したときの出力結果は何でしょうか? x = 5def modify_variable():global xx = x * 2return xprint(modify_variable())print(x) 10 10 5 10 10 5 エラー None 23. 次のコードを実行したときの出力結果は何でしょうか? value = []result = "空のリストです" if not value else "リストに値があります"print(result) リストに値があります 空のリストです エラーが発生します 出力されない None 24. 次のコードの実行結果を選んでください。 # パッケージ構造:# package/# ├── __init__.py# ├── subpackage/# │ ├── __init__.py# │ ├── module2.py# │ ├── module3.py# module2.pyfrom . import module3print(dir(module3))# module3.pydef greet():return "Hello from module3"class Greeter:def say_hello(self):return "Hello, world!" ['Greeter', 'greet', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__'] Error: module3 not found ['Greeter', 'greet'] エラーが発生する None 25. 変数numが偶数ならば「偶数です」、奇数なら「奇数です」と表示する条件式はどれでしょうか? print("偶数です" if num % 2 == 1 else "奇数です") print("奇数です" if num % 2 == 0 else "偶数です") print("偶数です" if num % 2 == 0 else "奇数です") print("偶数です" if num % 2 else "奇数です") None 26. 次のコードについて、selfの適切な説明を選んでください。 class MyClass:def greet(self):return "Hello!" selfはクラス定義内でのみ使用可能である selfはインスタンスメソッドの任意の引数である selfはインスタンスメソッドの第一引数として自動的に渡される selfは常にインスタンス変数を指す None 27. 次のコードを実行した場合、出力は何ですか? lst = [1, 2, 3]lst *= 2print(lst) [1, 2, 3, 1, 2, 3] [1, 2, 3, 2, 3, 1] [1, 2, 3] エラー None 28. 次のコードの実行結果を選んでください。 class MyClass:def __init__(self, value):self.value = valueobj = MyClass(5)print(obj.value)obj.value = 10print(obj.value) 5 5 5 10 エラーが発生する 何も出力されない None 29. 次のコードについて、テストメソッド名に必要なルールとして正しいものを選んでください。 import unittestclass TestExample(unittest.TestCase):def test_something(self):self.assertTrue(True) メソッド名はunit_で始める必要がある メソッド名はcase_で始める必要がある メソッド名は何でも良い メソッド名はtest_で始める必要がある None 30. 次のコードについて、with文を使用しない場合に注意が必要な点を選んでください。 f = open('sample.txt', 'r')content = f.read()f.close() エラーが発生した場合にファイルが閉じられない可能性がある ファイル内容が正しく読み取れない可能性がある ファイルが書き込み専用になる可能性がある ファイルが破損する可能性がある None 31. 次のコードを実行した場合の出力として正しいものを選んでください。 value = 123.456789formatted = "{:.2f}".format(value)print(formatted) 123.46 123.4567 123.456 123.45 None 32. 次のコードの実行結果を選んでください。 class MyClass:def __init__(self, value):self.value = valueobj1 = MyClass(10)obj2 = obj1obj2.value = 20print(obj1.value) 20 10 1 2 None 33. 次のコードを実行した場合の出力として正しいものを選んでください。 import statisticsdata = [1, 2, 3, 4, 5, 6, 7, 8]variance = statistics.variance(data)print(round(variance, 2)) 6.0 4.0 7.0 5.0 None 34. 次のコードのクラス定義として正しいものを選んでください。 class MyClass:pass クラスの定義が正しい クラス名に予約語を使用しているためエラー クラス内に少なくとも1つのメソッドを定義する必要があるためエラー passはクラス定義では使用できないためエラー None 35. 次のコードの実行結果を選んでください。 set1 = {1, 2, 3}set2 = {2, 3, 4}result = set1.symmetric_difference(set2)print(result) {1, 2, 3, 4} {} {2, 3} {1, 4} None 36. 次のコードの実行結果を選んでください。 # ファイル名: sample.txt# 初期内容: なし(ファイルは存在しない)with open('sample.txt', 'x') as f:f.write("Exclusive Content") ファイルが存在する場合、エラーが発生する ファイルが作成され、内容が"Exclusive Content"になる ファイルが作成されるが内容は空のまま エラーが発生する None 37. 次のコードを実行したときの出力結果は何でしょうか? def greet(name="Guest"):return "Hello, " + name + "!"print(greet())print(greet("Alice")) Hello, Guest! Hello, Alice! Hello, Alice! Hello, Guest! Hello, Guest! Guest Hello! Alice None 38. 次のコードの実行結果を選んでください。 class MyClass:class_variable = "shared"obj1 = MyClass()obj2 = MyClass()MyClass.class_variable = "modified"print(obj1.class_variable)print(obj2.class_variable) shared shared modified shared エラーが発生する modified modified None 39. 次のコードの実行結果を選んでください。 def check_divisible(a, b):if b == 0:raise ZeroDivisionError("Cannot divide by zero")return a / btry:print(check_divisible(10, 0))except ZeroDivisionError as e:print("Error:", e) ZeroDivisionError: Cannot divide by zero 10 エラーが発生してプログラムが停止する "Error: Cannot divide by zero" None 40. 次のコードの実行結果を選んでください。 # パッケージ構造:# package/# ├── __init__.py# ├── subpackage/# │ ├── __init__.py# │ ├── module.py# subpackage/module.pydef hello():return "Hello from subpackage!"# main.pyimport package.subpackage.module as modprint(mod.hello()) エラーが発生する None Error: hello not found Hello from subpackage! None Time's up