python的一些基本语法

不像Java,C/C++以花括号{}来区分语句块.Python是以缩进来表示语句块,同一缩进级别为同一级别的语句块.一个脚本文件中的0级缩进是文件加载的时候就会被执行的语句,

如print.开启一个新的缩进需要使用:(冒号),代表下一级别的语句块,如条件,循环或者函数定义.缩进最好使用四个空格.而且要注意缩进要一致,使用空格就全都用空格,

使用Tab就都使用Tab,混用就可能得到缩进错误:IndentationError: unindent does not match any outer indentation level

最后,务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

操作符

与Java和C中十分类似, +(加), -(减), *(乘), /(除), %(求余), **(指数运算), = (赋值).以及减便运算,如 +=, -=, *=和/= 等。 赋值运算与其他语言一致。 逻辑操作 > < <= >= != ==与其他语言一样.

不一样的有not逻辑非,and逻辑与和or逻辑或。

注释与文档

一行当中,从#开始地方就是注释.不会影响下一行。 ""引号放在文件的开头,函数的开头或者一个类的开头,就是文档注释,与Java中的/** ... */作用和目的是一样的。

折行

如果一行太长了,写不下了,就需要在下一行接着写,这时可以使用\来告诉Python,下一行继续.

一行写多个语句

Python是一个语句放在一行,行尾可以选择性的加上;但如果想在一行放多个语句,就需要用;来分隔语句: a = 1; b = 2; c = 3; 虽然这在语法上可行,但不是一个好习惯,绝大多数的编程规范都是要一行写一个语句.

基本数据类型

  • int 
  • long
  • bool
  • float

与Java中非常接近.可以近似认为一致.bool的值是True和False,或者0(False),非0就是True

输出

print加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:

>>> print 'Hello World!'
Hello World!
>>> print "Hello World!"
Hello World!

print会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的

>>> print 'one','two','three','four'
one two three four

print也可以打印整数,或者计算结果

>>> print 100
100
>>> print 100+200
300

print

>>> print '100 + 200 = ',100+200
100 + 200 =  300

 输入

>>>raw_input("\n\nPress the enter key to exit.")   #"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出

将输入结果当做变量输出

>>>name = raw_input('please enter your name: ')
>>>print 'hello,', name
please enter your name: ABC
hello, ABC

Python标识符

在python里,标识符有字母、数字、下划线组成。

在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

python中的标识符是区分大小写的。

以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入;

以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。

Python保留字符

下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。所有Python的关键字只包含小写字母

and

exec

not

assert

finally

or

break

for

pass

class

from

print

continue

global

raise

def

if

return

del

import

try

elif

in

while

else

is

with

except

lambda

yield

多行语句

Python语句中一般以新行作为为语句的结束符,但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

>>> total="one,"+\
... "two,"+\
... "three"
>>> print total
one,two,three
>>> one="you"
>>> two="are"
>>> three="the"
>>> four="best"
>>> str=one+two+\
... three+\
... four
>>> print str
youarethebest
>>> str=one,two,\
... three,\
... four
>>> print str
('you', 'are', 'the', 'best')

语句中包含[], {} 或 () 括号就不需要使用多行连接符。如下实例:

>>> days = ['Monday', 'Tuesday', 'Wednesday',
... 'Thursday', 'Friday']
>>> print days
['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

Python 引号

Python 接收单引号(' ),双引号(" ),三引号(''' """) 来表示字符串,引号的开始与结束必须的相同类型的。

其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。

单引号(' ):

>>> sentence = 'This is \' a sentence.'
>>> print sentence
This is ' a sentence.

双引号(" ):

>>> sentence = "This is ' a sentence."
>>> print sentence
This is ' a sentence.

三引号(''' """)

>>> paragraph = """This is \' a paragraph. It is
... made up of multiple lines and sentences."""
>>> print paragraph
This is ' a paragraph. It is
made up of multiple lines and sentences.

>>> print '''line1
... line2
... line3'''
line1
line2
line3

Python注释

python中单行注释采用 # 开头

python没有块注释,所以现在推荐的多行注释也是采用的 #比如:

# First comment
>>> print "Hello, Python!";  # second comment

Python空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

同一行显示多条语句

Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:

>>> name="ABC";print name
ABC

多个语句构成代码组

缩进相同的一组语句构成一个代码块,我们称之代码组。

像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。

我们将首行及后面的代码组称为一个子句(clause)。

如下实例:

# print absolute value of an integer:
a = 100
if a >= 0:
    print a
else:
    print -a