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程序构成

  1. Python程序由模块构成。一个模块对应python程序源文件,一般后缀名是 .py
  2. 模块由语句组成。运行python程序时,按照模块中语句的顺序依次执行
  3. 语句时Python程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等

Python程序格式

  1. 恰当的空格,缩紧问题
    • 逻辑行首的空白(空格和制表符)用来决定逻辑行的缩紧层次,从而决定语句分组
    • 语句从新行的第一列开始
    • 缩进风格统一:每个缩紧层次使用单个制表符或4个空格(常用编辑器一般讲制表符设置成4个空格)
  2. Python区分大小写
  3. 注释:
    • 单行注释:每行注释前加#。当解释器看到#,会自动忽略#后面的内容
    • 多行注释:使用三个连续单引号(''')。当解释器看到''',则会扫描到下一个''',然后忽略他们之间的内容
  4. 行连接符 \
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 总结

+ - * // % ** 都是数学操作符

+ * 是字符串操作符

posted @ 2019-10-04 07:17  后山前堂客  阅读(248)  评论(0)    收藏  举报