python 内包表記

python

内包表記(OneLiner表記)

%%timeit     #処理時間測定

data_10x = []

for datum in data:
data_10x.append(datum*10)
↓↓↓↓↓

data_10x = [datum*10 for datum in data]
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

data_odd= []

for datum in data:
    if datusum % 2 != 0:
        data_odd.append(datum)
↓↓↓↓↓

= [datum for datum in data if datusum % 2 != 0]

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

# 50>=x (50以上の整数)→そのまま表示
# 50<x                          →100倍

data_50=[]

for datum in data:
    if datum >= 50:
        data_50.append(datum)
else:
        data_50.append(datum*100)
↓↓↓↓↓

data_50 = [datum if datum >= 50 else datum*100 for datum in data ]

# if文の場合は、for文の後に記載し、
 if〜else文の場合は、for文の前に記載する

ーーーーーーーーーーーーーーーーーーーーーーーーーーー

FizzBuzz問題

1から50までの数字を出力するプログラムを作成してください。
ただし、数字が3の倍数の場合は数字の代わりにFizzと出力し
5の倍数の時は数字の代わりにBuzzと出力し
3と5の倍数の時は、FizzBuzzと出力すること。

fizz_buzz=[]

for i in range(1,51):
    if i % 15 == 0:
fizz_buzz.append(‘FizzBuzz’)
    elif i % 3 == 0:
fizz_buzz.append(‘Fizz’)
    elif i % 5 == 0:
fizz_buzz.append(‘Buzz’)
    else :
fizz_buzz.append(i)

↓↓↓↓↓

fizz_buzz = [‘FizzBuzz’ if i % 15 == 0 else ‘Fizz’  if i % 3 == 0 else Buzz’ if i % 5 == 0 else i for i in range(1,51)]

タイトルとURLをコピーしました