python基础篇:python基础语法原来如此简单

Python 作为一门计算机语言自然有它自己的语法规则,就像英语、汉语都有自己的语法规则一样。Python的语法以简洁著称,它以行、缩进、注释、标识符、保留关键字等几方面来规定了自己的语法。

下面我们先看一段Python代码:

Python 的行

在Python里面,行分为逻辑行和物理行。物理行就是以行结束符( )结尾算作一行,通常一个物理行也就是一个逻辑行。但有时候,一个逻辑行可以包含多个物理行,比如下面的代码,一个表达式太长我们就用多行来写,用斜杠()连接:

whole = 'This is a example of too long string' +

' which should be splited into multi-lines' +

' to show it'

print(whole)

如果语句中含有(), [], {}这些括号,就不需要用斜杠做连接符,比如:

# list元素可以多行书写

months = ['January', 'Februray', 'March', 'April',

'June', 'July', 'August', 'September',

'October', 'November', 'December']

# 字符串太长也可以通过()来多行书写。

# 这个特性在写很长的字符串(如SQL语句)时很有用

sql = ('select id, name, age, height from '

'students where id > 100')

空行

空行也是一种行(内容为空),也是代码的一部分。常用于分割代码块,便于代码维护,这种代码规范中有详细定义。

单行多条语句

Python 语法允许一行中有多条语句存在,语句之间用分号(;)分割,但是编码规范中强烈不建议这样做,还是一行一条语句更清晰。

# 合法但不提倡的单行多语句写法

print('hi'); a = 10; b = 20; print(a+b)

缩进

Python语法与其它语言的一个明显区别就是:通过缩进来表示代码块,而不是像C/C++、Java等用大括号{}。

不过,缩进并没有严格限制字符,可以是Tab键,也可以是多个空格。但是同一个源文件(.py文件)中缩进必须相同,也就是说,要么都用Tab键,要么都用2个空格,要么都用4个空格。官方的编码规范(PEP 8)中规定用4个空格作为一个缩进。

如果缩进不一致,就会报错: IndentationError。比如以下代码:

#!/usr/bin/env python3

# coding:utf-8

# File: demo.py

# 缩进混乱,执行时报错

a = 10

if a > 10:

print('a > 10')

else:

print('a

执行上面代码,就会出现如下错误:

python3 demo.py

File "demo.py", line 6

a = 10

^

IndentationError: unexpected indent

注释

注释是对代码的解释,是给读代码的人看的文字,不是给Python解释器运行的代码。

行内注释以#开头,即一行中#后面的文字都是注释内容。

多行注释使用三个单引号(''')或三个双引号(""")引起来,多用于docstring(对模块、类、和函数进行说明)

# 这是注释

print('hi, 猿人学') # 这也是注释

def myadd(a, b):

'''my add() function

param: a, int or float

param: b, int or float

return a + b

'''

return a + b

标识符(Identifiers)

标识符,也就是名称,即变量名、函数名、类名。Python给起名字做了相关的规定。

可以用在名称中的字符有:

大写字母: A-Z

小写字母: a-z

阿拉伯数字: 0-9

下划线: _

更多的Unicode字符:你可以用中文给变量起名字

标识符(起名字)可以包括以上字符,但是不能以数字开头,同时名称是区分大小写的。

Python2只支持ASCII码作为标识符的字符集, 而Python 3 扩展了标识符字符集,我们可以在程序中起中文名字,但是打中文会累死人的哦。

def 加法(加数, 被加数):

return 加数 + 被加数

计算机 = 1

编程 = 2

print(加法(计算机, 编程))

保留关键字

虽然Python程序中可以使用那么多的字符,但是它也保留了一些字(如下表所示)作为语言本身的关键字,你给你的变量、函数、类起名字的时候不能使用这些关键字:

False await else import pass

None break except in raise

True class finally is return

and continue for lambda try

as def from nonlocal while

assert del global not with

async elif if or yield

这些单词是Python语言里面的单词,一共不到40个,跟我们人类的语言(比如,英语)比起来单词量少之又少啊,计算机语言真简单!虽然计算机语言单词量很少,但是它讲逻辑,这么少的词汇加上运算符、变量和类等就可以构建出复杂的计算机程序。

保留的类标识符

这些类的标识符有特殊的含义,它们都是以下划线_开头和结尾的形式:

_* 不会被语句from module import *导入。

__*__ 系统定义的名称。

__* 类的私有名称。

总结

Python语法最大的特点就是:严格缩进。正是这样严格的缩进规定,简化并清晰了它的格式,体现了Python让开发者“用一种方法,最好是只有一种方法来做一件事”的哲学。

如果你觉得本文对你的学习有帮助的话,不妨点个关注呗。

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20190531A0BLH300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券