Python 学习笔记01【Python基础】
Python指的是 Python编程语言(包括语法规则,用于编写有效的python代码) 和 Python解释器(读取Python源代码并执行)。
python解释器是运行python程序的软件, IDLE(交互式开发环境)是输入程序的地方,提示非常友好:

Python程序执行
Python代码可以通过如下几种方式运行:
1 在工具上运行:
1.1 直接在IDLE交互式开发环境中运行
1.2 在pycharm等ide中运行
1.3 在jupyter notebook中运行
2 通过python运行 hello01.py文件,结果如下:
print('Hello, Wold')
[@wooluwalkerdeMacBook-Pro:~]$ python ~/learn/mycode/python/pytest/liaoxuefeng/hello01.py
Hello, Wold
3 直接运行 hello02.py 文件
在脚本中注明Python解释器的位置:#!/usr/bin/env python3, 脚本如下:
#!/usr/bin/env python3
print('Hello python3')
[@wooluwalkerdeMacBook-Pro:~]$ ~/learn/mycode/python/pytest/liaoxuefeng/hello02.py
-bash: /Users/walker/learn/mycode/python/pytest/liaoxuefeng/hello02.py: Permission denied【该文件没有执行权限】
[@wooluwalkerdeMacBook-Pro:~]$ chmod a+x ~/learn/mycode/python/pytest/liaoxuefeng/hello02.py 【为hello02.py添加执行权限】
[@wooluwalkerdeMacBook-Pro:~]$ ~/learn/mycode/python/pytest/liaoxuefeng/hello02.py
Hello python3
Python源代码也是一种文本文件,所以,当源代码中包含中文时,在保存源代码的时候需要保存为UTF-8编码。当Python解释器读取源代码时,为了让它按照UTF-8编码读取,我们需要在源代码头上加上这两行: #!/usr/bin/env python3 # -*- coding: utf-8 -*- 第一行注释:告诉Linux/OS X系统,这是一个python的可执行程序,Windows会忽略这个注释 第二行注释:告诉Python解释器,按照UTF-8读取源代码,否则源代码中的中文会乱码。
为了避免源代码乱码问题,除了规定源代码头的写法,还得保证源代码保存方式:按照UTF-8格式保存源代码,文本编辑器正在使用UTF-8 without BOM编码

Python程序构成
- Python程序由模块构成。一个模块对应python程序源文件,一般后缀名是 .py
- 模块由语句组成。运行python程序时,按照模块中语句的顺序依次执行
- 语句时Python程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等
Python程序格式
- 恰当的空格,缩紧问题
- 逻辑行首的空白(空格和制表符)用来决定逻辑行的缩紧层次,从而决定语句分组
- 语句从新行的第一列开始
- 缩进风格统一:每个缩紧层次使用单个制表符或4个空格(常用编辑器一般讲制表符设置成4个空格)
- Python区分大小写
- 注释:
- 单行注释:每行注释前加#。当解释器看到#,会自动忽略#后面的内容
- 多行注释:使用三个连续单引号(''')。当解释器看到''',则会扫描到下一个''',然后忽略他们之间的内容
- 行连接符 \
a="abcd\ asdfafd\ efg"
对象
Python中,一切且对象。每个对象由标识、类型和值组成。
- 标识:用于唯一标识对象,通常对应对象在计算机内存中的地址。使用内置函数id(obj)可返回对象obj的标识
- 类型用于表示存储的“数据”类型。类型可以限制对象的取值范围以及可执行的操作。使用内置函数type(obj)可返回对象的所属类型
- 值表示对象所存储的数据信息/内容。使用print(obj)可直接打印出值
对象的本质,一个内存块,拥有特定的值,支持特定类型的相关操作。
>>> a = 3 #该赋值过程详解如下:
将3这个对象创建好,然后将该对象的地址给到变量a

引用
在Python中,变量也是对象的引用。因此,变量中存储的就是对象地址。变量通过地址引用了对象。
变量位于:栈内存
对象位于:对内存
Python是动态类型语言,变量不需要显示声明类型。根据变量引用的对象,Python解释器启动确定变量的类型
Python是强类型语言,每个对象都有数据类型,只支持该类型支持的操作
标识符
标识符,用于变量、函数、类、模块等的命名。表示服有如下特定的规则:
- 区分大小写。
- 第一个字符必须是字母、下划线。其后的字符可以是:字母、下划线、数字
- 不能使用关键字:以双下划线开头和结尾的名称通常有特殊含义,尽量避免这种写法。比如:__init__是类的构造函数。可食用Python帮助系统查看关键字:
>>> help()
help> keywords
......
命名规则
| 类型 | 规则 | 例子 |
| 模块和包名 |
全小写字母,尽量简单。 多个单词之间用下划线_分隔 |
math,os,sys |
| 函数名 | 全小写字母,多个单词之间用下划线_分隔 | phone,my_name |
| 类名 | 首字母大写,驼峰规则 | MyPhone,MyClass |
| 常量名 | 全部大写,多个单词之间用下划线_分隔 | SPEED,MAX_SPEED |
数学操作符,如下表:
| 操作符 | 操作 | 案例 | 求值 |
| ** | 指数 | 2**3 | 8 |
| % | 取模/取余数 | 22%8 | 6 |
| // | 整除/商数取整 | 22//8 | 2 |
| * | 乘法 | ||
| - | 减法 | ||
| + | 加法 |
1.2 整型、浮点型和字符串数据类型
1.3 字符串连接和复制
>>> 'Alice' + 42
报错:TypeError:can't convert 'int' object to str implicitly, 因为python不能自动完成类型转换。
>>> 'Alice' * 3
AliceAliceAlice,字符串的复制
1.4 在变量中保存值
1.4.1 赋值语句
1.4.2 变量名
规则:
- 只能是一个词
- 只能包含字母、数字、下划线
- 不能以数字开头
常犯错误:带有中划线、带有空格、数字开头、特殊字符(‘,*,¥)
变量名称区分大小写
变量名使用驼峰形式(lookLikeThis,书中推荐)或者PEP8(looking_like_this,官方推荐)
1.6.5
文本和数字相等判断
>>> 42 == '42'
False
>>> 42 == 42.00
True
>>> 42 == 0042.00
True
1.7 总结
+ - * // % ** 都是数学操作符
+ * 是字符串操作符

浙公网安备 33010602011771号