缩进Python 3.8请修复

问题描述

所以我想创建一个登录页面,但缩进变得很麻烦,我是Python的新手,而我所做的一切似乎总是使它混乱。

if StartingPrompt == "l":
    username_2 = input("Enter your username: ")

password = input("Enter your password: ")

    else:
    print("Please only enter 's' or 'l' ")

return StartingPrompt

解决方法

您的缩进被弄乱了。

$2
,

假设您在其他地方初始化了StartingPrompt,则代码应如下所示:

if StartingPrompt == "l":
    username_2 = input("Enter your username: ")
    password = input("Enter your password: ")
else:
    print("Please only enter 's' or 'l' ")

在每个if语句之后,您需要缩进块; def(功能),try-except等也是如此。

例如:

if <condition>:
    # indent
    print("Inside if-body.")
elif <condition>:
    # indent
    print("Inside elif-body.")
else:
    # indent
    print("Inside else-body.")

# back to original indentation
print("Outside of if-statment.")

您也有一个return语句,但是您不需要此语句,因为您的代码未包含在函数中。如果您想使用功能:

def login():
    # indent here (inside function body)
    StartingPrompt = input("Please enter option: ")
    if StartingPrompt == "l":
        username_2 = input("Enter your username: ")
        password = input("Enter your password: ")
    else:
        print("Please only enter 's' or 'l' ")
    return StartingPrompt
,

修正缩进(在passwordelsereturn附近):

def YOUR_FUNCTION():
    if StartingPrompt == "l":
        username_2 = input("Enter your username: ")
        password = input("Enter your password: ") 
    else:
        print("Please only enter 's' or 'l' ")

    return StartingPrompt
,

添加注释以保持清晰。

if StartingPrompt == "l":
    username_2 = input("Enter your username: ")

    password = input("Enter your password: ")  # one tab indent here

else:  # one un-indent here
    print("Please only enter 's' or 'l' ")

return StartingPrompt
,

我不知道您是否习惯于编程,但尝试将python缩进视为其他语言中的()。 python中的缩进与图层相同。除非您已完成声明,否则您需要留在同一层。

<table id="grid" width="100%" border="1" cellspacing="0" cellpadding="0">
<tbody>
    <tr>
        <td>a</td>
        <td>a</td>
        <td>a</td>
        <td>a
          <div id="DivToShow" >
            <button onClick="edit('a')">Edit</button>
            <button onClick="dup('a')">Dup</button>
            <button onClick="remove('a')">Delete</button>
          </div>
        </td>
    </tr>
    <tr >
        <td>b</td>
        <td>b</td>
        <td>b</td>
        <td>b
          <div id="DivToShow" >
            <button onClick="edit('b')">Edit</button>
            <button onClick="dup('b')">Dup</button>
            <button onClick="remove('b')">Delete</button>
          </div>
        </td>
    </tr>
    <tr>
        <td>c</td>
        <td>c</td>
        <td>c</td>
        <td>c
          <div id="DivToShow" >
            <button onClick="edit('c')">Edit</button>
            <button onClick="dup('c')">Dup</button>
            <button onClick="remove('c')">Delete</button>
          </div>
        </td>
    </tr>
    <tr >
        <td>d</td>
        <td>d</td>
        <td>d</td>
        <td>d
          <div id="DivToShow" >
            <button onClick="edit('d')">Edit</button>
            <button onClick="dup('d')">Dup</button>
            <button onClick="remove('d')">Delete</button>
          </div>
        </td>
    </tr>
    <tr>
        <td>e</td>
        <td>e</td>
        <td>e</td>
        <td>e
          <div id="DivToShow" >
            <button onClick="edit('e')">Edit</button>
            <button onClick="dup('e')">Dup</button>
            <button onClick="delete('e')">Delete</button>
          </div>
        </td>
    </tr>
    </tbody>
</table>
,

使用4个空格进行缩进。阅读PEP 8以获得更多样式指南。

if StartingPrompt == "l":
    username_2 = input("Enter your username: ")
    password = input("Enter your password: ")
else:
    print("Please only enter 's' or 'l' ")

return StartingPrompt