Câu lệnh logic hoặc 'if' đơn giản trong Python [đã đóng]


109

Bạn sẽ viết đoạn sau bằng Python như thế nào?

if key < 1 or key > 34:

Tôi đã thử mọi cách có thể nghĩ ra và cảm thấy rất bực bội.


6
Bạn gặp vấn đề gì? Bạn gặp lỗi nào? Ví dụ của bạn là mã python hợp lệ theo ý kiến ​​của tôi !?
Achim

Bạn đang tìm kiếm một cú pháp cụ thể? Câu lệnh bạn đã viết cách bạn viết nó bằng Python.
Yony

Câu trả lời:


222

Nếu keykhông phải là một inthay floatnhưng một string, bạn cần phải chuyển đổi nó vào một intđầu bằng cách làm

key = int(key)

hoặc để floatlàm

key = float(key)

Nếu không, những gì bạn có trong câu hỏi của mình sẽ hoạt động, nhưng

if (key < 1) or (key > 34):

hoặc là

if not (1 <= key <= 34):

sẽ rõ ràng hơn một chút.


19

Đây là một thứ Boolean:

if (not suffix == "flac" )  or (not suffix == "cue" ):   # WRONG! FAILS
    print  filename + ' is not a flac or cue file'

nhưng

if not (suffix == "flac"  or suffix == "cue" ):     # CORRECT!
       print  filename + ' is not a flac or cue file'

(not a) or (not b) == not ( a and b ) , là false chỉ khi a và b đều đúng

not (a or b) chỉ đúng nếu a và be đều sai.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.