辞書
内包表記を使った辞書の作成
d = {str(x):x for x in range(10)}
>>>{'0': 0,
'1': 1,
'2': 2,
'3': 3,
'4': 4,
'5': 5,
'6': 6,
'7': 7,
'8': 8,
'9': 9}
内包表記を使った条件付き辞書の作成
#偶数だけ抜き出す条件式
d2 = {str(x):x for x in range(10) if x%2 == 0 }
>>>{'0': 0, '2': 2, '4': 4, '6': 6, '8': 8}
既存の辞書から条件付き辞書を作成
d = {str(x):x for x in range(10)}
d2 = {key:value for key,value in d.items() if value%2==0}
>>>{'0': 0, '2': 2, '4': 4, '6': 6, '8': 8}
set
乱数の集合を作成
import random
rand_set = {random.randrange(0,10) for i in range(10)}
>>>len(rand_set)
>>>7
重複しない10個の乱数が得られるまでループする
rand_set2 = {}
count = 0
while len(rand_set2) != 10:
rand_set2 = {random.randrange(0,10) for i in range(10)}
count += 1
print('count={}'.format(count))
>>>count=6185
>>>{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
以上