モーダルを閉じる工作HardwareHub ロゴ画像

工作HardwareHubは、ロボット工作や電子工作に関する情報やモノが行き交うコミュニティサイトです。さらに詳しく

利用規約プライバシーポリシー に同意したうえでログインしてください。

目次目次を開く/閉じる

Python コードスニペット (リスト、タプル、ディクショナリ)

モーダルを閉じる

ステッカーを選択してください

お支払い手続きへ
モーダルを閉じる

お支払い内容をご確認ください

購入商品
」ステッカーの表示権
メッセージ
料金
(税込)
決済方法
GooglePayマーク
決済プラットフォーム
確認事項

利用規約をご確認のうえお支払いください

※カード情報はGoogleアカウント内に保存されます。本サイトやStripeには保存されません

※記事の執筆者は購入者のユーザー名を知ることができます

※購入後のキャンセルはできません

作成日作成日
2013/07/21
最終更新最終更新
2020/09/28
記事区分記事区分
一般公開

目次

    プログラミング教育者。ScratchやPythonを教えています。

    リスト

    range

    「0から10まで」といった範囲をリスト形式で生成します。

    sample.py

    print range(10) # for(int i=0; i<10; ++i) ← C言語などのfor文と比較
    print range(5,10) # for(int i=5; i<10; ++i)
    print range(5,10,2) # for(int i=5; i<10; i+=2)
    print range(10,5,-1) # for(int i=10; i>5; --i)
    

    出力例

    $ python sample.py 
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    [5, 6, 7, 8, 9]
    [5, 7, 9]
    [10, 9, 8, 7, 6]
    

    ソート

    List = [2,1,3,0]
    print sorted(List)
    List.sort()
    print List
    

    出力例

    [0, 1, 2, 3]
    [0, 1, 2, 3]
    

    合計

    print sum([2,1,3,0])
    

    出力例

    6
    

    長さ

    print len([1,2,3])
    

    出力例

    3
    

    要素の真偽値判定

    print any([2,1,3,0]) # 少なくとも1つがTrueなら真
    print all([2,1,3,0]) # すべてがTrueなら真
    
    print 'val1' in ['val1', 'val2', 'val3'] # 含まれているか
    print 'val4' in ['val1', 'val2', 'val3']
    

    出力例

    True
    False
    True
    False
    

    POP

    List = ['A','B','C']
    while List: print List.pop()
    

    出力例

    C
    B
    A
    

    連結

    List = ['a','b']
    

    複数要素を追加

    print List + ['c','d']
    List.extend(['c','d']); print List
    

    1つの要素を追加

    print List + ['x']
    List.append('x'); print List
    

    出力例

    ['a', 'b', 'c', 'd']
    ['a', 'b', 'c', 'd']
    ['a', 'b', 'c', 'd', 'x']
    ['a', 'b', 'c', 'd', 'x']
    

    スライシング

    List = ['A','B','C','D','E']
    print List[:2] # List[0:2]の省略形
    print List[2:]
    
    string = "This is a string."
    print string[:3]
    print list(string[:3])
    

    出力例

    ['A', 'B']
    ['C', 'D', 'E']
    Thi
    ['T', 'h', 'i']
    

    map関数

    print map((lambda x: 2**x), [0,1,2,3,4,5,6,7,8,9,10])
    print map((lambda x,y: x**y), [2,2,2,2], [0,1,2,3])
    

    出力例

    [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
    [1, 2, 4, 8]
    

    filter関数

    Perlなどのgrepのようなものです。

    print filter((lambda x: x>0), range(-5,5))
    

    出力例

    [1, 2, 3, 4]
    

    reduce関数

    並列プログラミングでおなじみのreduce関数。最初はリストの第1,2要素が引数、次は先程の演算結果と第3要素が引数...(以下同様) となります。

    print reduce((lambda x,y: x*y), [1,2,3,4,5]) # n!
    

    出力例

    120
    

    ディクショナリ

    Dict = {'key1':'val1',
            'key2':'val2',
            'key3':'val3'}
    for key in Dict.keys(): print key, Dict[key]
    for key in Dict: print key, Dict[key]  # .keys() は省略可能
    

    出力例

    key3 val3
    key2 val2
    key1 val1
    key3 val3
    key2 val2
    key1 val1
    

    要素の存在確認

    ディクショナリで値が設定されていない key を指定すると KeyError となります。has_key() で確認するか get() を利用します。

    D = {'A': 1, 'B': 2}
    print 'A' in D
    print D.has_key('A')
    

    出力例

    True
    True
    

    要素の削除

    D = {'A': 1, 'B': 2}
    
    del D['A']
    print D
    
    D.pop('B')
    print D
    

    出力例

    {'B': 2}
    {}
    

    存在するすべて変数のディクショナリを生成

    x = 1; y=2
    print vars()
    

    出力例

    {'__builtins__': <module '__builtin__' (built-in)>, '__file__':
    'sample.py', '__package__': None, 'x': 1, 'y': 2, '__name__':
    '__main__', '__doc__': None}
    

    各種シーケンスの生成

    list, tuple

    print list("string")
    print tuple("string")
    

    出力例

    ['s', 't', 'r', 'i', 'n', 'g']
    ('s', 't', 'r', 'i', 'n', 'g')
    

    zip, dict(ディクショナリ)

    print zip(['a','b','c'], [1,2,3])
    print dict(zip(['a','b','c'], [1,2,3]))
    

    出力例

    [('a', 1), ('b', 2), ('c', 3)]
    {'a': 1, 'c': 3, 'b': 2}
    

    enumerate

    for (i,char) in enumerate("abc"): print i,char
    

    出力例

    0 a
    1 b
    2 c
    
    Likeボタン(off)0
    詳細設定を開く/閉じる
    アカウント プロフィール画像

    プログラミング教育者。ScratchやPythonを教えています。

    記事の執筆者にステッカーを贈る

    有益な情報に対するお礼として、またはコメント欄における質問への返答に対するお礼として、 記事の読者は、執筆者に有料のステッカーを贈ることができます。

    >>さらに詳しくステッカーを贈る
    ステッカーを贈る コンセプト画像

    Feedbacks

    Feedbacks コンセプト画像

      ログインするとコメントを投稿できます。

      ログインする

      関連記事

      • Python コードスニペット (条件分岐)
        if-elif-else sample.py #!/usr/bin/python # -*- coding: utf-8 -*- # コメント内であっても、ASCII外の文字が含まれる場合はエンコーディング情報が必須 x = 1 # 一行スタイル if x==0: print 'a' # 参考: and,or,notが使用可能 (&&,||はエラー) elif x==1: p...
        coderinacoderina10/25/2015に更新
        いいねアイコン画像0
      • ZeroMQ (zmq) の Python サンプルコード
        ZeroMQ を Python から利用する場合のサンプルコードを記載します。 Fixing the World To fix the world, we needed to do two things. One, to solve the general problem of "how to connect any code to any code, anywhere". Two, to wra...
        coderinacoderina9/7/2021に更新
        いいねアイコン画像0
      • Matplotlib/SciPy/pandas/NumPy サンプルコード
        サムネイル画像-9ca9c78897
        Python で数学的なことを試すときに利用される Matplotlib/SciPy/pandas/NumPy についてサンプルコードを記載します。 Matplotlib SciPy pandas [NumPy](https://www.numpy
        パンダパンダ12/26/2024に更新
        いいねアイコン画像0
      • pytest の基本的な使い方
        サムネイル画像-bdd40188f7
        pytest の基本的な使い方を記載します。 適宜参照するための公式ドキュメントページ Full pytest documentation API Reference インストール 適当なパッケージ
        nanodevnanodev7/8/2022に更新
        いいねアイコン画像0
      • PID 制御による全方向移動ロボットの位置制御 (ODE、Python)
        サムネイル画像-ad4d1978a8
        Open Dynamics Engine (ODE) を用いて、全方向移動ロボットの位置制御を PID 制御で行う場合のサンプルを記載します。差分駆動型ロボットと比較して、全方向移動ロボットは任意の方向に移動できるため位置制御が容易です。 モータの角速度を操作することでロボットの位置を制御 目標値 xdx_dxd​ と現在時刻における測定値 x(t)x(t)x(t) の残差 e(t)e(t)e(t...