Object-Oriented Programming
Prof. Seungtaek Choi
Recap
Today
1st Assignment!
Git/GitHub Basics�(Or, How to Submit Assignment)
What is Git?
What is GitHub?
Git & GitHub?
push
Components of Git: Repository
Components of Git: Branch
Components of Git: Commit
Git Branching Structure (Dev)
branch
branch
branch
branch
branch
commit
Git Branching Structure (Ours)
main
main
HUFS-LAI-Seungtaek/HUFS-LAI-OOP-2025-2:main
hufs-student-2/HUFS-LAI-OOP-2025-2:main
main+1
assignment1.py
main+2
assignment1.py
main+2
main+1
main
hufs-student-1/HUFS-LAI-OOP-2025-2:main
main+1
assignment1.py
Git Workflow
Git Workflow
Git Workflow: fork
Git Workflow: clone
Git Workflow: add & commit
Git Workflow: add & commit
Git Workflow: add & commit
Git Workflow: add & commit
Git Workflow: add & commit
Git Workflow: push
Git Workflow: PR & merge
Git Workflow: branch
Git Workflow: branch
GitHub Web Shortcuts �(Or, How to Submit Assignment #1)
Fork repository
Fork repository
Repo is copied under your account.
Add a file
Add a file
Add a file
members/{학생이름}.md
Example: members/seungtaek.md
Example: members/yeachan.md
Example: members/gildong.md
Don’t include {}�Don’t use uppercase
Don’t use Korean
Introduce yourself
You can see actual “code” from
https://github.com/HUFS-LAI-Seungtaek/HUFS-LAI-OOP-2025-2/blob/main/members/seungtaek.md?plain=1
Feel free to introduce yourself more!
Commit the change (your file)
Back to “your” repo
Submit PR to lecture repository
Submit PR to lecture repository
Submit PR to lecture repository
Please follow the format �n-th Assignment by {학번} ({Full name})
Do not use ‘ or “
Please use ` (look at the ~)
You can see the preview.
Python Basics (2)
Comments (1)
Comments (2)
Data Types (1)
Data Types (2)
Data Types (3)
Data Types (3)
Q0: “How to Change Pithon to Python?”
Q0: “How to Change Pithon to Python?”
A0:
Data Types (4)
Data Types (5)
Q1: “Why list in tuple is changed?”
Q1: “Why list in tuple is changed?”
A1: “It’s about reference immutability.”
Q2: “Why does changing y also change x?”
Q2: “Why does changing y also change x?”
A2: “It’s about reference copy.”
Data Types (6)
The most adorable feature of Python for me.
Data Types (7)
Q3: “Why is dict + dict not allowed?”
Q3: “Why is dict + dict not allowed?”
A3: “Explicit is better than implicit.”
Be explicit (b will overwrite a)
Data Types (8)
More Pythonic
Data Types (9)
String Format
String Format
Indexing and Slicing
String Built-in Functions (1)
String Built-in Functions (2)
String Built-in Functions (3)
String Built-in Functions (4)
Useful List Functions (1)
Useful List Functions (2)
if Statements
if Statements
if Statements
if Statements
if Statements
if Statements
if Statements
while Loops
while Loops
while Loops
while Loops
for Loops
for Loops
for Loops
for Loops
for Loops
for Loops
for Loops
List Comprehensions
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
User & File I/O
User & File I/O
User & File I/O
User & File I/O
User & File I/O
Error Handling
Next