Một số câu hỏi về python và dịch tài liệu

Chào mọi người! :hugs:
Mình là beginner đang tự học theo cuốn Learn Python The Hard Way.
Đến Exercise 35 : Branches and Functions phần Study Drills có câu hỏi :
“The gold_room has a weird way of getting you to type a number. What are all the bugs in this way of doing it? Can you make it better than just checking if “1” or “0” are in the number? Look at how int() works for clues”

  • Giờ mình muốn nếu nhập vào số int thì sẽ chạy tiếp, còn nhập vào không phải số int thì sẽ dừng ( chạy hàm dead) thì phải làm sao nhỉ?:thinking: ( nó có gợi ý là dùng int() nhưng mình vẫn không hiểu lắm.)
  • Thứ 2 là tiếng anh mình hơi kém đọc mấy bài ebook.pdf không cho coppy paste phải dùng gg dịch gõ ra hơi chậm. Có ai biết cách dịch ngay trên file pdf đó hay cách nào nhanh hơn không chỉ mình với !
  • Thứ 3 là mình có code và dùng tiếng việt khi chạy bằng PowerShell thì nó bị lỗi gì lạ lạ đọc không ra chữ. Vậy bác nào biết cách fix hoặc dùng cái khác có thể in ra tiếng việt chỉ mình với.

    -Mong được câu trả lời hay and Cám ơn mọi ngườii!
    ( Thấy khá tiếc khi anh Đạt chưa ra thêm video về python nữa giờ phải tự mày mò học chậm nhiều so với khi xem video học Python của anh. :persevere: )

1/ mình gợi ý bạn compare type(input) == int
2/ mở file pdf bằng google chrome
3/ bạn có thể print cái chữ ko dấu ra. miễn sao tự đọc và debug đc.

2 Likes

mình không học python nên không biết nhưng trong c nó không cho viết chữ có dấu, chắc python cũng vậy.
P/s: bạn nên thử code bằng Tiếng Anh :slight_smile:

1 Like

Unicode là vấn đề vô cùng rắc rối trong Python, bạn mới học thì nên né ra, sau này nghiên cứu lại cũng được.

2 Likes

Python là 1 trong những ngôn ngữ hỗ trợ Unicode tốt nhất ngay từ thuở nó mới ra đời. Chỉ là vấn đề sử dụng trên Terminal thì font chữ hạn chế nên Unicode khác tiếng Anh hiển thị kém, nếu qua môi trường GUI, sẽ dễ dàng.

2 Likes

Không phải đâu, bạn trên kia chỉnh không đúng encoding để hiển thị (trông như UTF8 bị render ra theo kiểu ANSI Latin 1), và việc chỉnh cho đúng là một điều rất lắt léo (ít ra là Python2), chứ CMD của Windows nếu để font có các kí tự Tiếng Việt thì vẫn hiện Tiếng Việt ngon lành.

2 Likes

Vậy để thỏa điều kiện hiện tiếng Việt, chúng ta sẽ phải làm những việc gì?


Soạn thảo văn bản thời 7X là như thế này này.

(Ngoài lề tí: mình nhớ ngày xa xưa học sinh trung học rất bực mình khi học Pascal toàn viết tiếng Việt không dấu đọc phát điên lên được, có lúc đọc ra bậy bạ đến buồn cười. Khi một số bạn chuyên tin (hoặc toán - tin) được học cao hơn, sâu hơn, họ ngứa mắt với cái tiếng Việt không dấu quá nên đã mượn bộ font chữ VNI + thư viện đồ họa BGI hoặc chơi theo kiểu của VietRes nạp đè bảng mã ASCII (các bạn học C cài đặt với Turbo C++ cũng tương tự) để buộc máy tính hiển thị tiếng Việt có dấu. Ngày đó mình học lớp văn, nên nghe bọn kia nó cứ há hốc mồm như cá ngáo. Buồn cười nhất là có phần mềm xem tử vi, font chữ bị sao đó xem cười ngất, đọc méo miệng, tối nghĩa vô cùng). Thời này còn vài “đại ca” nổi lên mà tiếng tăm đến tận bây giờ đó là Trương Đình Anh, Nguyễn Tử Quảng, Phạm Kim Long, Vương Quang Khải, Vương Vũ Thắng (8x) và đại ca Phan Sào Nam :smiley:

2 Likes

Trước mình cũng thấy nó gợi ý dùng lệnh type() mà không biết áp dụng vào thế nào. Cám ơn bác !:sweat_smile:

Mình biết là thời xưa máy tính MS-DOS/Windows cũ còn không có khái niệm Unicode nên có đưa Tiếng Việt vào cũng rất là eo hẹp (có codepage Windows 1258 còn chẳng mấy ai dùng mà người ta chủ yếu “mượn” codepage Windows 1252), nhưng bây giờ thì hệ thống cmd của Windows có thể hiểu được Unicode rồi, thêm cái font có Tiếng Việt và phần mềm encode cho đúng là được.

2 Likes

nhưng mình thấy dùng input() thì nhập chữ vào nó sẽ báo lỗi vậy khi user nhập chữ vào nó cũng sẽ báo lỗi. Còn dùng raw_input thì nhập số hay chữ nó vẫn là ‘str’ . Giờ làm sao gì để nhập chữ thì không bị báo lỗi nhỉ?

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?