Python从入门到弃坑学习笔记——第二章 语法基础

第 2 章 语法基础

2.1Python 代码规范

Python 程序的组成

1.Python 程序由模块组成。一个模块对应 Python 源文件,一般后缀名是:.py。

2.模块由语句组成。运行 Python 程序时,按照模块中语句的顺序依次执行。

3.语句是 Python 程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等。

代码的组织

1.标点符号都是英文/半角符号,而不是中文,例如:(,”

2.Python 区分大小写,例如True不等于true

3. 每行代码结束没必要加 ;

代码的缩进

很多编程语言通过字符(例如:花括号{} )、关键字(例如:begain/end)来划分程序代码块,同时配合代码的缩进增加可读性。而“龟叔”设计Python 语言时,直接通过缩进来划分程序代码块,同一级缩进为一个程序代码块。“缩进”成为Python 语法强制的规定(但这并不是说Python 中没有{} )。

1.每行行首的空白量决定此行的缩进层次,从而用来决定语句的分组。

2.空白量统一用空格、制表符Tab生成,IDE会自动将 单个制表符 设置成 4个空格。

3.通常每个缩进层次使用 单个制表符 或 四个空格。

缩进示例:

def qian():                             #第一级缩进,0个空格

data = a                         #第二级缩进,4个空格

url = b                           #第二级缩进,4个空格,如果不是4个空格会报错,与其他语言的一个明显区别

header = {                     #第二级缩进,4个空格

'cookie': cookie      #第三级缩进,8个空格

}                                    #第二级缩进,4个空格

Python 官方推荐的 PEP-8 代码风格详细说明,有兴趣的可以参考:PEP 8 – Style Guide for Python Code | peps.python.org

注释

1.行注释

每行注释前加#号,最好再加个空格。当解释器看到#,则忽略这一行#后面的内容。

2.段注释

使用三个连续单引号'''(或者三个连续双引号""")。当解释看到''',则会扫描到下一个''',然后忽略他们之间的内容。

换行

一行程序长度是没有限制的,但是为了可读性更强,通常将一行比较长的程序分为多行。我们可以使用\行连接符,把它放在行结束的地方。Python 解释器仍然将它们解释为同一行。

例:long_tuple = ( \

    1, 2, 3, \

    4, 5, 6 \

)

print(long_tuple)

执行后:

(1, 2, 3, 4, 5, 6)

但是,使用\进行硬连接并不是PEP-8推荐的首选方式,因为这可能导致不易察觉的缩进错误和格式混乱。更好的做法是利用Python的()、{}+自动换行功能。

my_tuple = (

    1, 2, 3,

    4, 5, 6

)

print(my_tuple)

my_list = [

    'item1',

    'item2',

    'item3',

]

print(my_list)

my_dict = {

    'key1': 'value1',

    'key2': 'value2',

    'key3': 'value3',

}

执行后:

print(my_dict)

(1, 2, 3, 4, 5, 6)

['item1', 'item2', 'item3']

{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

2.2对象

Python 中,一切皆对象。每个对象由:标识(identity)、类型(type)、value(值)组成。

1. 标识用于唯一标识对象,通常对应于对象在计算机内存中的地址。使用内置函数 id(obj) 可返回对象 obj 的标识。

2. 类型用于表示对象存储的“数据”的类型。类型可以限制对象的取值范围以及可执行的操作。可以使用 type(obj)获得对象的所属类型。

3. 值表示对象所存储的数据的信息。使用 print(obj)可以直接打印出值。

对象的本质就是:一个内存块,拥有特定的值,支持特定类型的相关操作。

例1:

a=3 # 动态类型语言不需要定义时声明数据类型

print(id(3))

print(type(3))

print(3)

print(id(a))

print(type(a))

print(a)

执行后:

1531372336

<class 'int'>

3

1531372336

<class 'int'>

3

例2:

b='我爱你' # 或者b="我爱你"也行

print(id(b))

print(type(b))

print(b)

执行后:

46806816

<class 'str'>

我爱你

示意图:

2.3引用

在Python 中,变量也成为:对象的引用。因为变量存储的就是对象的地址。 变量通过地址引用了“对象”。

变量位于:栈内存(压栈出栈等细节,后续再介绍)。

对象位于:堆内存。

Python 是动态类型语言:变量的数据类型不在编译时确定,而在运行时确定,即变量不需要显式声明数据类型。根据变量引用的对象,Python 解释器自动确定其数据类型,这一点不同于C、C++、JAVA。

Python 是强类型语言:每个对象都有数据类型,只支持该类型支持的操作。

2.4关键字、标识符

关键字/保留字

关键字/保留字是Python语言中一些已经被赋予特定意义的单词。开发程序时,不可以把这些保留字作为标识符、变量、函数、类、模块和其他对象的名称来使用。Python 中所有保留字是区分字母大小写的。

and

as

assert

break

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值