道路のpython 12

  1. 今日のノートを仕上げ、クラスのコードは、少なくとも3回ノック。

  2. リスト内包して以下の小さな問題を実行します。

  3. 3未満の長さの文字列のリストを濾過し、大文字に残り

    l = ['wusir', 'laonanhai', 'aa', 'b', 'taibai']
    # print([i.upper() for i in l if len(i) > 3])
  4. 検索(x、y)は、xは0~5の間の偶数であり、yは0~5からなる祖先奇数リストの間であります

    # print([(i,j) for i in range(6) if i % 2 == 0 for j in range(6) if j % 2 == 1])
  5. M M = [1,2,3]、[4,5,6]、[7,8,9]]からなるリストの中で求め-3,6,9-

    print([[i-2,i-1,i] for i in range(3, 10, 3)])
  6. 50は3で割り切れる数の正方形内に得られ、そしてリストに入れることができます。

    print([i**2 for i in range(50) if i % 3 == 0])
  7. リストの構築:[ 'のpython1'、 'python2期間'、 'のpython3期間'、 'python4期間'、 'python6期間'、 'python7期間'、 'python8期間'、 'python9期間'、 'のpython10']

    print(['python%s期'% i for i  in range(1,11) if i != 5])
  8. リストの構築:[(0,1)、(1,2)、(2,3)、(3,4)、(4,5)、(5,6)]

     print([(i,i+1) for i in range(6)])
  9. [0、2、4、6、8、10、12、14、16、18]のリストを構築します

    print([i+i for i in range(10)])
  10. L1のリストがあります= [「アレックス」、「WuSir」、「オールドボーイズ」、「白」]リストで設定されている[「alex0」、「WuSir1」、「歳の少年2」、「3白」]

    print([l1[i] + str(i) for i in range(len(l1))])
  11. 次のデータ型:

x = {'name':'alex',
     'Values':[{'timestamp':1517991992.94,'values':100,},
               {'timestamp': 1517992000.94,'values': 200,},
            {'timestamp': 1517992014.94,'values': 300,},
            {'timestamp': 1517992744.94,'values': 350},
            {'timestamp': 1517992800.94,'values': 280}],}

リストによって導出下記式へのデータの上記タイプ:[1,517,991,992.94、100]、[1,517,992,000.94、200]、[1,517,992,014.94、300]、[1,517,992,744.94、350]、[1,517,992,800.94、280]

print([[i['timestamp'], i['values']] for i in x['Values']])
  1. デカルト製品リストとの完全な

    デカルト積とは何ですか?デカルト積がリストされ、反復型内部リスト要素は、長さが入力変数の長さの積に等しくなるように、リストの直積、からなる群の入力要素の要素に利用可能にされます。

Tシャツの3種類のサイズのリストであるリストの。建設は、各色は、二次元(タプル型内の要素のリスト)を有しています。

colors = ['black', 'white']
sizes = ['S', 'M', 'L']
tshirts = [(color, size)for color in colors for size in sizes]
print(tshirts)

リストのB.建設要素はキングサイズ後に除去されているカードのリスト、カードのすべてのクラス(タプル型内部リスト要素)。

l1 = [('A','spades'),('A','diamonds'), ('A','clubs'), ('A','hearts')......('K','spades'),('K','diamonds'), ('K','clubs'), ('K','hearts') ]

ranks = [str(n) for n in range(2, 11)] + list('JQKA')
suits = 'spades diamonds clubs hearts'.split()
lis = [(rank, suit) for suit in suits for rank in ranks]
  1. 簡単に言うと収量からの収量の違い。
    収率は限り収率は、彼ではなく、関数の生成関数であるように機能識別ジェネレータ関数です。
    次の歩留まりのジェネレータ関数から値を取得します。
    発生器は内部目標値を生成するように、それは各反復のための1つになります:話すから理解収率の容易さの観点から
    羊と[「ウェイロング」から収率、「古いアイスキャンディー」、「北極」、」 「]
    と同等です
    Waylung」降伏「
    降伏」古いアイスキャンディー
    降伏『北極』
    羊との利回り『』
    (、記憶しなければならない顔の質問)の二つの機能からの収量を話すより深い視点から:

    1. 彼は完全に、内側のループを交換効率を向上させるので、それは(あなたが次の問題を確認することができます)よりスムーズに読み込むことができます。

    2. また、チャネル、発電機の外クライアントに直接接続された内側のジェネレータを作成することができます

  2. 簡素化する能力に次のコードを見てください?あなたは、単純化の利点について話した後?

def chain(*iterables):

    for it in iterables:

        for i in it:

            yield i

g = chain('abc',(0,1,2))

print(list(g))  # 将迭代器转化成列表

def chain(*iterables):
  for it in iterables:
    yield from it
g = chain('abc',(0,1,2))
print(list(g))
优点: 他可以完全代替了内层循环,提高效率,让待吗读起来更顺畅(下一道题就可以验证)。
  1. コード追求の結果(を見て面接の質問):
v = [i % 2 for i in range(10)]
print(v)

v = (i % 2 for i in range(10))
print(v)

for i in range(5):
    print(i)
print(i)
  1. コード:(評価の結果を参照してください。インタビューの質問に
def demo():
    for i in range(4):
        yield i

g=demo()

g1=(i for i in g)
g2=(i for i in g1)

print(list(g1))
print(list(g2))
  1. コード:(評価の結果を参照してください。インタビューの質問に
def add(n,i):
    return n+i

def test():
    for i in range(4):
        yield i

g=test()
for n in [1,10]:
    g=(add(n,i) for i in g)

print(list(g))

# 分步去分析循环。

おすすめ

転載: www.cnblogs.com/zanao/p/11079849.html