ホームページ >バックエンド開発 >Python チュートリアル >Python の基本構文とインデント: 完全初心者ガイド
初めてプログラミングを学習するとき、Python は特別な理由で際立っています。Python は、英語とほぼ同じように読めるように設計されているからです。多くの記号や括弧を使用する他のプログラミング言語とは異なり、Python はコードをよく整理されたドキュメントのように見せるシンプルでクリーンな書式設定に依存しています。
Python の構文は、言語の文法規則のように考えてください。英語には、意味を明確にするために文を構成する方法に関するルールがあるのと同じように、Python には、人間とコンピューターの両方が理解できるようにコードを記述する方法に関するルールがあります。
Python 構文の最も単純な要素から始めましょう:
# This is a comment - Python ignores anything after the '#' symbol student_name = "Alice" # A variable holding text (string) student_age = 15 # A variable holding a number (integer) # Using variables in a sentence (string formatting) print(f"Hello, my name is {student_name} and I'm {student_age} years old.")
この例では、Python のいくつかの基本要素を使用しています。
Python は、電卓と同じように計算と比較を実行できます。
# Basic math operations total_score = 95 + 87 # Addition average = total_score / 2 # Division # Comparisons if student_age >= 15: print(f"{student_name} can take advanced classes")
ここが Python の本当にユニークな点です。Python はコードをグループ化するために括弧や特殊記号を使用する代わりに、インデントを使用します。最初は奇妙に思えるかもしれませんが、Python コードが非常に明確で読みやすくなります。
インデントは、詳細なアウトラインを整理する方法のように考えてください。
def make_sandwich(): print("1. Get two slices of bread") # First level if has_cheese: print("2. Add cheese") # Second level print("3. Add tomatoes") # Still second level else: print("2. Add butter") # Second level in else block print("4. Put the slices together") # Back to first level
インデントされた各ブロックは、Python に「これらの行は一緒に属している」と伝えます。これはアウトラインでサブリストを作成するのと似ています。「if has_cheese:」の下でインデントされたものはすべてその条件の一部です。
Python のインデントの重要なルールを見てみましょう:
def process_grade(score): # Rule 1: Use exactly 4 spaces for each indentation level if score >= 90: print("Excellent!") if score == 100: print("Perfect score!") # Rule 2: Aligned blocks work together elif score >= 80: print("Good job!") print("Keep it up!") # This line is part of the elif block # Rule 3: Unindented lines end the block print("Processing complete") # This runs regardless of score
プログラムが複雑になると、多くの場合、複数レベルのインデントが必要になります。
def check_weather(temperature, is_raining): # First level: inside function if temperature > 70: # Second level: inside if if is_raining: # Third level: nested condition print("It's warm but raining") print("Take an umbrella") else: print("It's a warm, sunny day") print("Perfect for outdoors") else: print("It's cool outside") print("Take a jacket")
インデントがコードの整理にどのように役立つかを示す、より複雑な例を見てみましょう。
def process_student_grades(students): for student in students: # First level loop print(f"Checking {student['name']}'s grades...") total = 0 for grade in student['grades']: # Second level loop if grade > 90: # Third level condition print("Outstanding!") total += grade average = total / len(student['grades']) # Back to first loop level if average >= 90: print("Honor Roll") if student['attendance'] > 95: # Another level print("Perfect Attendance Award")
# Good: Clear and easy to follow def check_eligibility(age, grade, attendance): if age < 18: return "Too young" if grade < 70: return "Grades too low" if attendance < 80: return "Attendance too low" return "Eligible" # Avoid: Too many nested levels def check_eligibility_nested(age, grade, attendance): if age >= 18: if grade >= 70: if attendance >= 80: return "Eligible" else: return "Attendance too low" else: return "Grades too low" else: return "Too young"
class Student: def __init__(self, name): self.name = name self.grades = [] def add_grade(self, grade): # Notice the consistent indentation in methods if isinstance(grade, (int, float)): if 0 <= grade <= 100: self.grades.append(grade) print(f"Grade {grade} added") else: print("Grade must be between 0 and 100") else: print("Grade must be a number")
# WRONG - Inconsistent indentation if score > 90: print("Great job!") # Error: no indentation print("Keep it up!") # Error: inconsistent indentation # RIGHT - Proper indentation if score > 90: print("Great job!") print("Keep it up!")
# WRONG - Mixed tabs and spaces (don't do this!) def calculate_average(numbers): total = 0 count = 0 # This line uses a tab for num in numbers: # This line uses spaces total += num
インデントと構文を練習するために次のプログラムを書いてみてください:
# This is a comment - Python ignores anything after the '#' symbol student_name = "Alice" # A variable holding text (string) student_age = 15 # A variable holding a number (integer) # Using variables in a sentence (string formatting) print(f"Hello, my name is {student_name} and I'm {student_age} years old.")
これで、Python の基本的な構文とインデントが理解できました。
覚えておいてください: 適切なインデントの習慣は、熟練した Python プログラマーになるための基礎となります。時間をかけてこれらの概念をマスターすれば、残りは自然に付いてくるでしょう!
以上がPython の基本構文とインデント: 完全初心者ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。