Nhận dữ liệu: Trò chuyện với Robot
Gắn thêm tai cho robot Python của bạn! Học cách thu thập dữ liệu nhập từ bàn phím bằng hàm input, chuyển đổi kiểu dữ liệu và tạo chatbot tương tác.
Chào mừng em quay trở lại! 💬
Cho đến nay, chú robot Python của chúng ta chỉ nói chuyện một chiều bằng lệnh print(). Nhưng một cuộc trò chuyện thực sự cần có sự tương tác từ cả hai phía! Hôm nay, chúng ta sẽ lắp thêm đôi tai cho chú robot để chú có thể lắng nghe những gì chúng ta gõ từ bàn phím và phản hồi lại.
Để làm được việc này, chúng ta sử dụng lệnh input()!
Cách Robot Lắng Nghe (Luồng nhận dữ liệu)#
Lệnh input() sẽ tạm dừng chương trình và đợi em gõ gì đó từ bàn phím. Khi em nhấn phím Enter, Python sẽ lấy những gì em vừa gõ và lưu nó vào một chiếc hộp biến!
graph TD
Question["1. Robot hỏi: 'Tên em là gì?'"] --> Input["2. Em gõ: 'Alex' và ấn Enter"]
Input --> Box["3. Giá trị 'Alex' được lưu vào biến 'name'"]
Box --> Greet["4. Robot chào: 'Rất vui được gặp em, Alex! 👋'"]
Đây là cách chúng ta viết dòng lệnh này trong Python:
name = input("Tên em là gì? ")
print("Rất vui được gặp em, " + name + "! 👋")pythonKhi em chạy đoạn mã này, robot sẽ hiển thị câu hỏi, dừng lại và chờ đợi. Khi em gõ tên của mình rồi nhấn Enter, robot sẽ tiếp tục chạy và in ra lời chào mừng!
Cái Bẫy Bí Mật: Chữ Viết và Con Số! ⚠️#
Có một cái bẫy bí mật khi sử dụng lệnh input(). Chú robot sẽ mặc định tất cả những gì em gõ đều là chữ viết (kiểu String), kể cả khi em gõ một con số!
Ví dụ:
age = input("Em bao nhiêu tuổi? ")
print(age + 5) # 💥 BÁO LỖI! Python không thể cộng một con số vào một dòng chữ.pythonĐể khắc phục điều này, chúng ta cần sử dụng một câu thần chú tên là int() để chuyển chữ viết thành một con số thực sự:
age = input("Em bao nhiêu tuổi? ")
age = int(age) # Chuyển dòng chữ (ví dụ "10") thành con số thực sự (10)
print("5 năm nữa, em sẽ:", age + 5, "tuổi")pythonTự Mình Trải Nghiệm! 🎮#
Hãy mở trình biên dịch Python và thử tạo một trò chơi trò chuyện nhỏ này nhé:
color = input("Màu sắc yêu thích của em là gì? ")
if color == "xanh dương":
print("Thật sao? Xanh dương cũng là màu yêu thích của robot đó! 💙")
else:
print(color + " là một màu rất đẹp! 🎨")pythonHãy thử gõ các màu sắc khác nhau để xem chú robot phản ứng như thế nào nhé!
Với sức mạnh của lệnh input(), em đã có thể xây dựng các trò chơi phiêu lưu bằng chữ tương tác, nơi người chơi có thể gõ các lệnh như "đi sang trái", "mở cửa", hoặc "tấn công quái vật". Chúc em thực hành vui vẻ!