Search code examples
pythonfunctionif-statementsyntaxbreak

What does a semicolon do?


I got a function online to help me with my current project and it had semicolons on some of the lines. I was wondering why? Is it to break the function?

def containsAny(self, strings=[]):
    alphabet = 'abcdefghijklmnopqrstuvwxyz0123456789'
    for string in strings:
        for char in string:
            if char in alphabet: return 1;
    return 0;

The function I got online with little modification:

for string in strings:
    for char in string:
        if char in alphabet: return 1;

Is the above saying the following?

if char in alphabet:
    return 1
    break

Solution

  • The semicolon does nothing in the code you show.

    I suspect this is someone who programs in another language (C, Java, ...) that requires semicolons at the end of statements and it's just a habit (happens to me sometimes too).

    If you want to put several Python statements on the same line, you can use a semi-colon to separate them, see this Python Doc:

    A suite is a group of statements controlled by a clause. A suite can be one or more semicolon-separated simple statements on the same line as the header, following the header’s colon, or it can be one or more indented statements on subsequent lines