2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Pythonいろんな構文

Last updated at Posted at 2021-08-31

変数代入について

まとめて代入

x, y, z = 1, 10, 100
print(x, y, z)  # 1 10 100

リスト、辞書型の展開

リストの展開

test = [1, 2, 3]
print([test, 4, 5])  # [[1, 2, 3], 4, 5]
print([*test, 4, 5])  # [1, 2, 3, 4, 5]

辞書型の展開

test = {'apple': 'red', 'remon': 'yellow'}
print({**test,'cherrie': 'pink'}) # {'apple': 'red', 'remon': 'yellow', 'cherrie': 'pink'}

真偽

testNoneではないまたはTrueの場合は真

if test:
    print('OK')

testNoneまたはFalseの場合は真

if not test:
    print('NG')

inは辞書型でも使える

test = {'age': 20}
if 'age' in test and test['age'] >= 20:
    print('大人です')

比較演算子の組み合わせ

if x >= 0 and x <= 20:
if 0 <= x <= 20:

三項演算子

if文の中の処理が少ないとき、1行で済ませる方法があります。

(変数) = (条件が真のときの値) if (条件式) else (条件が偽のときの値) 
if test >= 0:
    message = "正の数または0です"
else:
    message = "負の数です"
# ↓一行で終わり
message = "正の数または0です" if test >= 0 else "負の数です"

文字列の扱い

文字列の中に変数を埋め込む

name = "太郎"
print("私は" + name + "です")

# 一番見やすく簡単
print(f"私は{name}です")

# format関数
print("私は{}です".format(name))

print("私は%sです" % name)

型変換

# 文字から数字へ
int('100') # 100

# 数字から文字へ
str(100) # "100"

文字列置換

を置換している。

print("私は男です。".replace("", ""))
# 私も男です。

金額のカンマ

'money'は数値型ですがフォーマットでカンマをつけると文字列になります。

money = 12345678
print("代金は¥{:,}円になります。".format(money))
# 代金は¥12,345,678円になります。

小数点以下丸め

print("{:,.2f}".format(1234.5678))
# 1,234.57

for文

indexと一緒に繰り返す

indexには0~カウントアップする数字が入っています。
valueにはtestの中の値が入っています。

test = [1, 10, 15, 16]

for index, value in enumerate(test):
    print('index:', index, 'value:', value, ',', end=' ')

複数のリストを同時に回す

list1 = [1, 2, 3, 4]
list2 = ["リンゴ", "みかん", "もも", "パイナポー"]

for num, fruit in zip(list1, list2):
  print(f"{fruit}{num}")

# リンゴが1個
# みかんが2個
# ももが3個
# パイナポーが4個

enumeratezipの合わせ技もできる。

辞書のFOR文

普通にするとkeyの値しか入ってない。

test = {'apple': 'red', 'remon': 'yellow'}

for key in test:
    print(key)
  print(test[key])

.items()を付与することでキーと値が取れるようになる。

for key, value in test.items():
    print(f"{key}:{value}")

配列

配列内の重複を削除

test = [1, 2, 3, 3, 5, 1]
print(list(set(test))) # [1, 2, 3, 5]

ソート(昇順降順)

test = [10, 25, 4, 100, 69]
print(sorted(test)) # [4, 10, 25, 69, 100]
print(sorted(test, reverse=True)) # [100, 69, 25, 10, 4]

test = [[10, 25], [4, 100], [69, 71]]
print(sorted(test, key=lambda item: item[1])) # [[10, 25], [69, 71], [4, 100]]

辞書型のソート

test = [{'name': 'taro', 'age': 18},{'name': 'jiro', 'age': 12}]

# [{'name': 'jiro', 'age': 12}, {'name': 'taro', 'age': 18}]
print(sorted(test, key=lambda item: item['age']))

例外

tryの中でエラーが起こった場合exceptに入ります。
finallyはエラーになってもならなくても最終的に通るところです。
finallyはなくてもいいです。
エラーの場合、何もしない場合はexceptの中にpass

try:
    print("テスト")
except Exception:
    print("エラー!")
finally:
    print("ここは絶対通る")

エラーの場合、何もしない場合はexceptの中はpass

try:
    print("テスト")
except Exception:
    pass
2
2
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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?