0
0

Python3エンジニア認定基礎試験 勉強してみた2

Last updated at Posted at 2024-01-24

「Python3エンジニア認定 [基礎試験]」 合格を目指します。

使用教材:
・Pythonチュートリアル第4版 --オライリー・ジャパン--
・徹底攻略Python3エンジニア認定基礎試験 問題集 --impress--

前回の記事:
Python3エンジニア認定基礎試験 勉強してみた1

こんにちは!
徹底攻略Python3エンジニア認定基礎試験 問題集を解きました。

第3章 リストの操作
9問中6問正解!
第4章 判定と繰り返し
10問中5問正解

間違えた所を確認していきます。

見直し

【リストのスライス操作】

リストのスライス範囲は、「開始位置:終了位置」のように記述します。
開始位置を省略すると先頭からになり、終了位置を省略すると末尾までになります。

data = [|1,|2,|3,|4 |]
        0  1  2  3  4
【append()メソッド】

リストの末尾に要素を追加するには、append()メソッドを使います。

リストに要素を追加する①
リスト名.append(値)

リストに要素を追加する②
リスト名 += [値]

【短絡演算子】

不要な評価を省略して短絡する(一足飛びに結論を出す)演算子を、短絡演算子といいます。
例えば、A and Bは、次のように計算して結果を返します。

・Aを評価しその評価結果の真偽を判定する
・判定が偽であれば、Bを評価せずにAの評価結果を返す
・判定が真であれは、Bを評価しその評価結果を返す

・andがずっと続く場合
左から評価していき、「最初に偽」になった評価結果が最終結果になります。
すべて真の場合は、最後の評価結果が最終結果になります。

例:andが続く場合
def num(value):
    return value

value1 = num(0) and num(1) and num(2)
回答
value1 = 0

・orがずっと続く場合
左から評価していき、「最初に真」になった評価結果が最終結果になります。
すべて偽の場合は、最後の評価結果が最終結果になります。

例:orが続く場合
def num(value):
    return value

value2 = num(0) or num(1) or num(2)
回答
value2 = 1
【Noneとの比較】
【コードと判定結果】
コード valueがNoneのとき valueがNoneでないとき
if value: 不定
if not value: 不定
if value is None:
if value == None:
【range()関数】

range()関数は、整数を繰り返すオブジェクトを返す関数です。

range()関数による数列の作成
range(stop)
range(start, stop)
range(start, stop, step)
range()関数による数列の作成
r = range(3, 10, 3)
print(list(r))
実行結果
[3, 6, 9]
【enumerate()関数】

enumerate()関数は、for文と組み合わせることで、リストと文字列などの反復可能体からインデックスと要素を同時に取得できます。
反復可能体とは、for文による繰り返しが可能なもの
(リスト、タプル、ディクショナリ、文字列などのデータ型)を指します。

書式:インデックスと要素を取得する
for i, elem in enumerate(iterable):
    print(i, elem)
指定したインデックスの要素を取得する
for i, c in enumerate("WORD"):
    if i == 2:
        print(c)
実行結果
R
【sorted()関数】

反復可能体から昇順にソートしたリストを取得できます。

書式:昇順のリストを取得する
sorted(iterable)
昇順のリストを取得する
print(sorted("EAT"))
実行結果
['A','E','T']
【reversed()関数】

リストや文字列などから逆順したオブジェクトを取得できます。

書式:逆順にしたオブジェクトを取得する
reversed(sequence)
逆順のリストを出力する
print(list(reversed(sorted("EAT"))))
実行結果
['T','E','A']
【zip()関数】

複数の反復可能体から並列で要素を取得できます。

2つのリストから要素を出力する
for n, c in zip([1, 2, 3],["1", "2", "3"]):
    print(c * n)
実行結果
1
22
333

次の記事
Python3エンジニア認定基礎試験 勉強してみた3

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0