Input:

name = input("What's your name? ")
print(name)

Concatenation of strings

name = input("What's your name? ") 
print("hello, " + name)

Function with two positional argument

name = input("What's your name? ")
print("hello,", name)

Hàm print() có các tham số (argument):

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
  • **objects**: Danh sách các đối tượng cần in ra (có thể là chuỗi, số, danh sách, v.v.).

  • **sep** (separator - mặc định ' '): Dấu phân cách giữa các đối tượng, mặc định là khoảng trắng.

    print("Hello", "World", "!", sep="-")
    # Output: Hello-World-!
  • **end** (mặc định '\n'): Ký tự kết thúc dòng, mặc định là xuống dòng (\n).

    print("Hello", end=" ")
    print("World!")
    # Output: Hello World!c
  • **file** (mặc định sys.stdout): Nơi xuất dữ liệu, có thể là sys.stdout console, file hoặc stream khác.

    with open("output.txt", "w") as f:
        print("Ghi vào file", file=f)
  • **flush** (mặc định False): Nếu True, bộ đệm sẽ được xóa ngay lập tức.

    for i in range(3):
        print(i, end=" ", flush=True)  # In ngay lập tức, không chờ bộ đệm
        time.sleep(1)
    # Output: 0 1 2 (mỗi số xuất hiện ngay lập tức)

Format string (định dạng chuỗi):

name = "Alice"
age = 25
print(f"Hello, my name is {name} and I am {age} years old.")
# Output: Hello, my name is Alice and I am 25 years old.

Str functions Capital/lowercase

s = "hello World"
print(s.upper())   # "HELLO WORLD"  -> Viết hoa toàn bộ
print(s.lower())   # "hello world"  -> Viết thường toàn bộ
print(s.title())   # "Hello World"  -> Viết hoa chữ cái đầu mỗi từ
print(s.capitalize())  # "Hello world"  -> Viết hoa chữ cái đầu tiên
print(s.swapcase())    # "HELLO wORLD"  -> Đảo ngược hoa/thường

trip (xóa khoảng trắng)

s = "  hello world  "
print(s.strip())   # "hello world"  -> Xóa cả đầu & cuối
print(s.lstrip())  # "hello world  "  -> Xóa bên trái
print(s.rstrip())  # "  hello world"  -> Xóa bên phải

is (kiểm tra chuỗi)

s = "hello123"
print(s.isalpha())   # False -> Chỉ gồm chữ cái?
print(s.isdigit())   # False -> Chỉ gồm số?
print(s.isalnum())   # True  -> Chữ cái + số?
print(s.isspace())   # False -> Chỉ chứa khoảng trắng?
print(s.startswith("he"))  # True  -> Bắt đầu bằng "he"?
print(s.endswith("123"))   # True  -> Kết thúc bằng "123"?

join/ split (tách ghép chuỗi)

s = "hello,world,python"
print(s.split(","))  # ['hello', 'world', 'python'] -> Tách chuỗi
print("-".join(["A", "B", "C"]))  # "A-B-C" -> Ghép chuỗi

thay thế và tìm kiếm

s = "hello world"
print(s.replace("world", "Python"))  # "hello Python" -> Thay thế
print(s.find("o"))   # 4  -> Vị trí đầu tiên của "o"
print(s.rfind("o"))  # 7  -> Vị trí cuối cùng của "o"
print(s.count("l"))  # 3  -> Số lần xuất hiện của "l"

căn chỉnh chuỗi

s = "hello"
print(s.center(10, "-"))  # "--hello---" -> Căn giữa
print(s.ljust(10, "-"))   # "hello-----" -> Căn trái
print(s.rjust(10, "-"))   # "-----hello" -> Căn phải

zfill (thêm cho đủ độ dài chuỗi)

s = "123"
print(s.zfill(5))  # "00123" -> Thêm số 0 vào đầu

Conversion from str to int

x = input("What's x? ") # 7
y = input("What's y? ") # 8
z = int(x) + int(y)
t = x + y
print(z)
print(t)
# 15 (z)
# 78 (t)

Chúng ta có thể viết gọn là

x = int(input("What's x? "))
y = int(input("What's y? "))
z = x + y
print(z)

Hàm làm tròn round() → làm tròn đến int gần nhất

x = float(input("What's x? "))
y = float(input("What's y? "))
z = round(x + y)
print(z)
  • Chúng ta có thể làm tròn sau decimal point

    x = float(input("What's x? "))
    y = float(input("What's y? "))
    z = round(x / y ,2) \#lam tron 2 so sau dau cham 
    print(z)
  • Chúng ta có thể viết ít biến hơn

    x = float(input("What's x? "))
    y = float(input("What's y? "))
    print(round(x + y))

Định dạng số với dấy phẩy và số chữ số sau dấu thập phân

num = 1234567.89123
print(f"{num:,}")         # "1,234,567.89123" (Dấu phẩy ngăn cách hàng nghìn)
print(f"{num:,.2f}")      # "1,234,567.89" (2 chữ số sau dấu thập phân)
print(f"{num:,.0f}")      # "1,234,568" (Không có số thập phân, làm tròn)

Cách định nghĩa hàm không có tham số trong Python

def greet():
    print("Hello, world!")
# Gọi hàm
greet()

Cách định nghĩa hàm có tham số trong Python

def greet(to)
		print("Hello,", to)
name = input("What's your name? ") \#An
greet(name)
# Hello An

Định nghĩa hàm có tham số mặc định trong Python

def greet(to="world"):
		print("Hello,", to)
greet() # Hello world
name = input("What's your name? ") \#An
greet(name)
# Hello An

Định nghĩa hàm có giá trị trả về

def add(a, b):
    return a + b
result = add(3, 5)
print(result)  # Output: 8

Global variable ( biến toàn cục)

x = 10  # Biến toàn cục
def modify_x():
    global x  # Khai báo sử dụng biến toàn cục
    x = 20    # Thay đổi giá trị của biến toàn cục
modify_x()
print(x)  # Output: 20
Truy cập biến toàn cụcprint(x)❌ Không cần
---------
Thay đổi biến toàn cụcglobal x; x = 20✅ Cần
---------
Danh sách, từ điểnlist.append(4)❌ Không cần
---------
Tạo biến cục bộ (trùng tên)x = 10 trong hàm❌ Không ảnh hưởng đến biến toàn cục

Problem Set