Try   HackMD
tags: Python勉強会

Python勉強会 第5回 課題

課題①

次のコードを実行して「整数a:」に「5」、「整数b:」に「0」を入力した場合の正しい結果はA~Dのどれでしょうか?

try: int_a = int(input('整数a:')) int_b = int(input('整数b:')) print(int_a ** 2) print((int_a ** 2) / int_b) except(ValueError) as v: print(type(v)) print('C') except(ZeroDivisionError) : print('D') except: print('E') else: print('F') finally: print('G')

A  25
   C
   F
   G
B  25
   0
   C
   G
C  25
   D
   G
D  25
   D
   F
   G


課題②

仮想環境とパッケージに関する次の記述のうち誤っているものはA~Dのどれでしょうか?

A  pip install でパッケージ名を指定し、そのパッケージ名の後ろに==とバージョン名を付けると、そのバージョンのパッケージをインストールできる。
B  pip install upgradeとすることで、当該パッケージを最新バージョンにアップグレードすることができる。
C  「pip list パッケージ名」で、ある特定のパッケージの詳細情報が表示される。
D  pip uninstall にパッケージ名を指定すると、その仮想環境からパッケージを削除できる。削除対象となるパッケージの複数指定も可能である。

※参考内容12.3. pip を使ったパッケージ管理


課題③

sample.py」を作成し、実行したときの結果として正しいものはA~Dのどれでしょうか?

[sample.py]

class Sample: c_list = [] def add_c_list(self,data): self.c_list.append(data) print("kekka:", end=" ") sample1 = Sample() sample1.add_c_list("shioya") sample2 = Sample() sample2.add_c_list("taketo") for item_data in sample1.c_list: print(item_data, end=" ")

A  kekka: shioya taketo
B  kekka:
C  kekka: shioya
D  kekka: taketo shioya


課題④

以下(1)~(4)のコードを実行すると、「構文エラー」「例外」どちらの結果になるでしょうか?

(1)

if i == "OFFICE54": print("OFFICE54")

(2)

def divide(x): return 54 / x print(divide(0))

(3)

if x==1: print("1")

(4)

d = {'a': 1, 'b': 2, 'c': 3} print(d['x'])

A  ①構文エラー ②構文エラー ③例外    ④構文エラー
B  ①例外    ②構文エラー ③例外    ④例外
C  ①構文エラー ②例外    ③例外    ④例外
D  ①例外    ②例外    ③構文エラー ④構文エラー

ヒント:ZeroDivisionError NameError TypeError