Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.003 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'python.': 0.02; 'python,': 0.02; 'programmer': 0.03; 'expressions': 0.07; 'perl,': 0.07; 'practice,': 0.07; 'referring': 0.07; 'falls': 0.09; 'second.': 0.09; 'statements': 0.09; 'python': 0.11; 'language.': 0.14; 'correct)': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'parentheses': 0.16; 'roy': 0.16; 'semicolon': 0.16; 'subject:python': 0.16; 'do,': 0.16; 'language': 0.16; 'wrote:': 0.18; 'all,': 0.19; 'differ': 0.19; 'things.': 0.19; 'thu,': 0.19; 'programming': 0.22; 'aug': 0.22; 'putting': 0.22; 'speakers': 0.26; 'header:In-Reply-To:1': 0.27; '[1]': 0.29; 'am,': 0.29; 'points': 0.29; "doesn't": 0.30; 'primarily': 0.30; 'message-id:@mail.gmail.com': 0.30; "i'm": 0.30; 'forces': 0.31; 'operations.': 0.31; 'subject:end': 0.31; 'url:06': 0.31; 'allows': 0.31; 'languages': 0.32; 'ourselves': 0.33; 'programmers': 0.33; 'german': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'really': 0.36; 'c++': 0.36; 'consistent': 0.36; 'doing': 0.36; 'wrong': 0.37; 'ends': 0.38; 'to:addr:python-list': 0.38; 'url:12': 0.39; 'to:addr:python.org': 0.39; 'skip:u 10': 0.60; "you're": 0.61; 'first': 0.61; 'you.': 0.62; 'real': 0.63; 'become': 0.64; 'more': 0.64; 'different': 0.65; 'great': 0.65; 'dear': 0.65; 'between': 0.67; 'book.': 0.68; 'smith': 0.68; 'sound': 0.68; 'day': 0.76; 'article': 0.77; 'interest.': 0.81; 'seriously,': 0.84; 'stone': 0.84; 'url:2007': 0.84; '2013': 0.98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=nqDpD3gDdzMus1RKvJUiHBpLcxjO1N4yl1DT55cJjtI=; b=sI5kQRoWVvQ3nnlhw2PKqT/mrsv25Hxi3Llljhe1UjKE3RCMRh/4D4POyWNU3gDZ7e t2su3pvDrh59Qj9hm1DUvJJ9VeThsSmiwds3FI2vH27FbckZ7f83hdHx86kgDkupZ/Vg d2q/bfy701GLsYffVGPr7b8I8txupjVwNxp40M+7WgSw0vkW0LI6mckUVg/z5+2yg9Py YTxy5DS5vS6NQeCSsliak01ATph+M6EPZovp/lQ1XteU7MM2SJ1b128fF0SpjxfpeBTT T0S+HaZg57Uvdgui9H+rL8tXT7cn8FmfF5w8q87stEEU1/Z5J0vVok3lHBYl4TXHZLZU tpcA== MIME-Version: 1.0 X-Received: by 10.58.54.70 with SMTP id h6mr404578vep.36.1377737266214; Wed, 28 Aug 2013 17:47:46 -0700 (PDT) In-Reply-To: References: Date: Thu, 29 Aug 2013 10:47:46 +1000 Subject: Re: semicolon at end of python's statements From: Chris Angelico To: python-list@python.org Content-Type: text/plain; charset=ISO-8859-1 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 40 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1377737268 news.xs4all.nl 15899 [2001:888:2000:d::a6]:39482 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:53203 On Thu, Aug 29, 2013 at 10:33 AM, Roy Smith wrote: > In article , > Mohsen Pahlevanzadeh wrote: > >> Dear all, >> >> I'm C++ programmer and unfortunately put semicolon at end of my >> statements in python. >> >> Quesion: >> What's really defferences between putting semicolon and don't put? > > In theory, nothing. In practice, all the real Python programmers will > make fun of you. > > Somewhat more seriously, every language has its own way of doing things. > There's the set of things the language allows you to do, and the > somewhat smaller set of things that have become accepted as the "proper" > way to do things in that language. For Python, putting semicolons at > the ends of statements falls into the first set but not the second. This is about Perl, but may be of interest. http://www.perl.com/pub/2007/12/06/soto-11.html One of his main points is that languages differ primarily in what they force you to say - not what you're able to express. C forces you to declare the ends of statements with semicolons. Python forces you to be consistent with indentation. Smalltalk (if I have this correct) forces you to put parentheses in expressions like a+b*c to declare order of operations. German forces you to match das/die/der to the noun it's referring to. Doing what a completely different programming language forces you to do is like speaking with the wrong grammar ("Murdered in the bed we will be! One day we will in bed find ourselves stone dead!"[1]); native speakers will understand you, but it doesn't sound fluent. ChrisA [1] Mit der knife in der chess! Sun on the Stubble. Great book.