Hướng dẫn is else if valid in python? - là khác nếu hợp lệ trong python?

Đã hỏi 12 năm, 7 tháng trước 12 years, 7 months ago

Đã xem 351k lần 351k times

Tôi là một lập trình viên Python mới, người đang thực hiện bước nhảy vọt từ 2.6.4 đến 3.1.1. Mọi thứ đã ổn cho đến khi tôi cố gắng sử dụng câu lệnh 'khác nếu'. Trình thông dịch cho tôi một lỗi cú pháp sau 'nếu' 'trong' khác nếu 'vì lý do tôi dường như không thể tìm ra.

def function[a]:
    if a == '1':
        print ['1a']
    else if a == '2'
        print ['2a']
    else print ['3a']

function[input['input:']]

Tôi có lẽ thiếu một cái gì đó rất đơn giản; Tuy nhiên, tôi đã không thể tự mình tìm câu trả lời.

Paul Turner

37.9K14 Huy hiệu vàng98 Huy hiệu bạc162 Huy hiệu đồng14 gold badges98 silver badges162 bronze badges

Đã hỏi ngày 7 tháng 3 năm 2010 lúc 4:17Mar 7, 2010 at 4:17

3

Trong Python "khác nếu" được đánh vần là "Elif". Ngoài ra, bạn cần một đại tràng sau elifelse.
Also, you need a colon after the elif and the else.

Câu trả lời đơn giản cho một câu hỏi đơn giản. Tôi đã có cùng một vấn đề, khi tôi mới bắt đầu [trong vài tuần qua].

Vì vậy, mã của bạn nên đọc:

def function[a]:
    if a == '1':
        print['1a']
    elif a == '2':
        print['2a']
    else:
        print['3a']

function[input['input:']]

Đã trả lời ngày 7 tháng 3 năm 2010 lúc 4:20Mar 7, 2010 at 4:20

4

Ý bạn là elif?

Đã trả lời ngày 7 tháng 3 năm 2010 lúc 4:23Mar 7, 2010 at 4:23

Nick Prestanick PrestaNick Presta

Phù bằng vàng 27,7K654 Huy hiệu bạc76 Huy hiệu đồng6 gold badges54 silver badges76 bronze badges

0

def function[a]:
    if a == '1':
        print ['1a']
    elif a == '2':
        print ['2a']
    else:
        print ['3a']

Đã trả lời ngày 7 tháng 3 năm 2010 lúc 4:23Mar 7, 2010 at 4:23

Nick Prestanick PrestaTom

Phù bằng vàng 27,7K654 Huy hiệu bạc76 Huy hiệu đồng6 gold badges37 silver badges44 bronze badges

Tomtom

d={"1":"1a","2":"2a"}
if not a in d: print["3a"]
else: print [d[a]]

21.1k6 Huy hiệu vàng37 Huy hiệu bạc44 Huy hiệu đồng

def print_one[arg=None]:
    print "one"

def print_two[num]:
    print "two %s" % num

execfunctions = { 1 : [print_one, ['**arg'] ] , 2 : [print_two , ['**arg'] ]}
try:
    execfunctions[1][0][]
except KeyError,e:
    print "Invalid option: ",e

try:
    execfunctions[2][0]["test"]
except KeyError,e:
    print "Invalid option: ",e
else:
    sys.exit[]

Kể từ thời xa xưa, cú pháp chính xác cho

def function[a]:
    if a == '1':
        print['1a']
    elif a == '2':
        print['2a']
    else:
        print['3a']

function[input['input:']]
1 trong Python là elif. Nhân tiện, bạn có thể sử dụng từ điển nếu bạn có rất nhiều
def function[a]:
    if a == '1':
        print['1a']
    elif a == '2':
        print['2a']
    else:
        print['3a']

function[input['input:']]
3.EGMar 7, 2010 at 4:31

ghostdog74ghostdog74ghostdog74

Đối với MSW, ví dụ về thực thi các chức năng bằng từ điển.55 gold badges252 silver badges341 bronze badges

5

Đã trả lời ngày 7 tháng 3 năm 2010 lúc 4:31

def function[a]:
    if a not in [1, 2]:
        a = 3
    print[str[a] + "a"]

314K55 Huy hiệu vàng252 Huy hiệu bạc341 Huy hiệu Đồng

Dưới đây là một chút tái cấu trúc chức năng của bạn [nó không sử dụng "khác" hoặc "Elif"]:Mar 7, 2010 at 5:26

@Ghostdog74: Python 3 yêu cầu dấu ngoặc đơn cho "in".Winston C. Yang

Đã trả lời ngày 7 tháng 3 năm 2010 lúc 5:262 gold badges18 silver badges27 bronze badges

2

def function[a]:
    if a == '1':
        print ['1a']
    else if a == '2'
        print ['2a']
    else print ['3a']

Winston C. Yangwinston C. Yang

def function[a]:
    if a == '1':
        print['1a']
    elif a == '2':
        print['2a']
    else:
        print['3a']

1.4872 Huy hiệu vàng18 Huy hiệu bạc27 Huy hiệu đồng

Nên được sửa thành:Jul 6, 2018 at 4:08

MilkyWay90MilkyWay90MilkyWay90

Như bạn có thể thấy, nếu không nên thay đổi thành Elif, nên có dấu chấm sau '2' và nếu không, nên có một dòng mới sau tuyên bố khác, và đóng không gian giữa in và dấu ngoặc đơn.1 gold badge8 silver badges20 bronze badges

Python có sử dụng khác nếu hay Elif?

Python nếu ... Elif ... khác tuyên bố Elif là viết tắt của nếu không. Nó cho phép chúng tôi kiểm tra nhiều biểu thức. Nếu điều kiện nếu là sai, nó sẽ kiểm tra điều kiện của khối Elif tiếp theo, v.v. Nếu tất cả các điều kiện là sai, cơ thể khác được thực thi.The elif is short for else if. It allows us to check for multiple expressions. If the condition for if is False , it checks the condition of the next elif block and so on. If all the conditions are False , the body of else is executed.

Elif có chạy nếu nếu là đúng?

Điều kiện Elif Khối Elif được thực thi nếu điều kiện được chỉ định đánh giá là TRUE.The elif block is executed if the specified condition evaluates to True .

Tại sao Python sử dụng Elif và không phải khác nếu?

Các ngôn ngữ có cú pháp giống như Python phải làm rõ một cái gì đó để có được một cấu trúc có thể được sử dụng như một người khác.Tại sao họ chọn Elif?Nó tùy ý;Bạn phải thực sự hỏi những người đã đưa ra quyết định.Tuy nhiên, Python đã không phát minh ra Elif, nó đã xuất hiện bằng các ngôn ngữ khác trước khi Python tồn tại.Python didn't invent elif , it was around in other languages long before Python existed.

Chúng ta có thể viết nếu điều kiện trong khác?

Câu lệnh IF/ELSE IF cho phép bạn tạo một chuỗi các câu lệnh IF.Các câu lệnh IF được đánh giá theo thứ tự cho đến một trong các biểu thức IF là đúng hoặc kết thúc của chuỗi nếu/khác nếu đạt được chuỗi.Nếu kết thúc của chuỗi if/khác nếu đạt được mà không có biểu thức thực, không có khối mã nào được thực thi.. The if statements are evaluated in order until one of the if expressions is true or the end of the if/else if chain is reached. If the end of the if/else if chain is reached without a true expression, no code blocks are executed.

Chủ Đề