[TIL]計算と変数


けいさん


CompressionはPython機能を1行で実現できる機能です.使いやすく、直感的で、スピードが速いという利点があります.
Compressionを使用する場合、1つ目は複数の条件を重ねると可読性が低下し、2つ目は条件文によってコンピュータのメモリに影響を与えることに注意してください.
# 1부터 20까지 홀수, 짝수 구분하기 

# 컴프리헨션 사용 X
odd_list = []
even_list = []

for i in range(1, 21):
  if i % 2 == 0:
    even_list.append(i)
  else:
    odd_list.append(i)

print(f'홀수 : {odd_list}') 
# 홀수 : [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
print(f'짝수 : {even_list}')
# 짝수 : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
# 컴프리헨션 사용

odd_list = [i for i in range(1, 21) if i % 2 != 0]
even_list = [i for i in range(1, 21) if i % 2 == 0]

print(f'홀수 : {odd_list}')
print(f'짝수 : {even_list}')

コンパイルでif文を使用する場合、コンパイルではelseを使用できますが、else if文は使用できません.
comprehensionはリストだけでなくdicksherner、setでも使用できます.

グローバル変数とゾーン変数


グローバル変数


グローバル変数は、Pythonファイル全体から値を読み取ることができる変数です.グローバル変数は、パフォーマンスと読み取りを可能な限り向上させるために、関数で値を変更しないほうがいいです.
+)側の効果は無意識の結果を表します.実装する機能が機能しない場合、他の要因によって機能しない場合、または多くの異なる場合をサイド効果と呼ぶ.

ゾーン変数


領域変数は、関数で宣言変数として宣言された関数でのみ変更および読み取りできます.領域変数の名前は同じですが、異なる関数で宣言されると、異なる変数とみなされます.
global_var = 'global variable'

def local():
  local1 = 'local variable 1'
  local2 = 'local variable 2'
  local3 = 'local variable 3'

  print('local function')
  print(f'local variable: {local2}')
  print(f'global variable: {global_var}')
  
print(f'local variable: {local1}')
# NameError: name 'local1' is not defined
上記のコードでNameErrorが生成された理由は、前述したように、領域変数が宣言された関数内でのみ使用可能であるため、関数外で領域変数を宣言するとエラーが発生するためである.同じ名前のグローバル変数がある場合、その変数は出力されます.