python学习笔记1

(一) python介绍

由来

  • 由来
    Python 是一种解释型、面向对象的语言。由龟叔:吉多·范罗苏姆(Guido van Rossum)于1989 年发明,1991 年正式公布。
    龟叔不是喜欢蟒蛇才起这个名字,而是正在追剧:英国电视喜剧片《蒙提·派森的飞行马戏团》(Monty Python and the Flying Circus)。
  • 特点
  1. 可读性强
    一个程序会被反复的修改,可读性强意味着让你可以在更短时间内学习和记忆,直接提高生产率。
  2. 简洁
    Python 是由C 语言开发,但是不再有C 语言中指针等复杂数据类型,Python 的简洁性让开发难度和代码幅度大幅降低,开发任务大大简化。
    (目前编程语言排名1.java;2.c;3.python;4.javascript)
    例子:完成螺旋线
import turtle
t = turtle.Pen()
for x in range(360):
t.forward(x)
t.left(59)

在这里插入图片描述

  1. 面向对象
  2. 免费和开源
  3. 可移植性和跨平台*(java也可以跨平台)*
    Python 会被编译成与操作系统相关的二进制代码,然后再解释执行。这种方式和java 类似,大大提高了执行速度,也实现了跨平台。
  4. 丰富的库(丰富的标准库, 多种多样的扩展库)
  5. 可扩展性。可嵌入到C 和C++语言。胶水式语言。
  • 应用范围
  1. 科学计算(主要)
  2. 人工智能(主要)
  3. WEB 服务端和大型网站后端。(java)
    YouTube、gmail 等应用基于python 开发。(中国的豆瓣)
  4. GUI 开发(图形用户界面开发)
  5. 游戏开发
  6. 移动设备
  7. 嵌入式设备
  8. 系统运维
  9. 大数据
  10. 云计算
  • Python 解释器
    Python 程序的执行依赖于Python 解释器。常用的Python 解释器有:
  1. CPython (常用)
    使用c 语言实现的解释器,最常用的解释器。通常说的解释器指的就是它。
  2. Jython
    使用java 语言实现的解释器。Jython 可以直接调用java 类库,适合在java 平台上开
  3. IronPython
    .NET 平台上使用的解释器。可直接调用.NET 平台的类,适合.NET 平台上开发
  4. PyPy
    使用Python 语言实现的解释器

Python 开发环境

  • Python 开发环境
    开发环境,英文是IDE(Integrated Development Environment 集成开发环境)。
    开发环境本质上就是对刚安装的Python 解释器python.exe 的封装,核心都一样。可以说:“开发环境IDE,只是解释器的一个外挂而已”,在外部包装了一下开发了别的功能,只是为了让程序员更加方便编程,减少出错率,尤其是拼写错误。
    (不同的IDE包装不同)
    常用的开发环境如下:
  1. IDLE (python安装完默认有IDLE,在搜索栏输入idle查找可以进入交互模式,IDLE本身有1.交互模式2.开发源程序)
  2. Pycharm
  • IDLE 介绍
  1. IDLE 是Python 的官方标准开发环境,Python 安装完后同时就安装了IDLE。
  2. IDLE 已经具备了Python 开发几乎所有功能(语法智能提示、不同颜色显示不同类型等
    等),也不需要其他配置。
  3. IDLE 是Python 标准发行版内置的一个简单小巧的IDE,包括了交互式命令行、编辑器、
    调试器等基本组件,足以应付大多数简单应用。
  4. IDLE 是用纯Python 基于Tkinter 编写,最初的作者正是Python 之父Guido van Rossum。
  • IDLE 实操
  1. 交互模式,启动IDLE,默认就是进入交互模式。
  2. 编写和执行Python 源文件 (IDLE基于源文件的开发模式,搜索栏idle,建立python源文件File-new file写python代码,file-save)
  • Python 源程序的注意点
  1. 不要在程序中,行开头处增加空格。空格在Python 中有缩进的含义。
  2. 符号都是英文符号,不是中文。
  • 程序基本格式
  1. 恰当的空格,缩进问题
    (1) 每个缩进层次使用单个制表符或四个空格(IDE 会自动将制表符设置成4 个
    空格)
    (2)Python 用缩进而不是{}表示程序块
  2. Python 区分大小写
  3. 注释
    (1) 行注释
    每行注释前加#号。
    (2) 段注释
    使用三个连续单引号(’’’)。
    之间的内容。
  • 图形化程序设计
    海龟绘图:2个练习
    1.完成奥运五环的绘图程序
    2.使用海龟绘图,输出四个矩形

(二) 编程基础(1)

Python 的构成创建

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

交互式环境,每次只能执行一条语句;为了编写多条语句实现复杂的逻辑,通过创建Python 文件,并执行该文件。
在IDLE 环境中,我们可以通过File–>new 创建Python 文件,并可以编辑该文件内容。我们也可以通过File–>save/save as 保存文件。一般保存成扩展名为py 的文件。
需要执行编辑好的文件,可以用快捷键F5 或者点击Run–>Run module。

  • 代码的组织和缩进
    缩进时,几个空格都是允许的,但是数目必须统一。我们通常采用“四个空格”表示一个缩进。:tab 制表符就是4 个空格。

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

>>> a = [10,20,30,40,\
50,60,70,\
80,90,100]
>>> a
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

Python 的对象

  • 对象
    Python 中,一切皆对象。每个对象由:标识(identity)、类型(type)、value(值)
    组成。
  1. 标识用于唯一标识对象,通常对应于对象在计算机内存中的地址。使用内置函数id(obj)可返回对象obj 的标识。
  2. 类型用于表示对象存储的“数据”的类型。类型可以限制对象的取值范围以及可执行的
    操作。可以使用type(obj)获得对象的所属类型。
  3. 值表示对象所存储的数据的信息。使用print(obj)可以直接打印出值。
    对象的本质就是:一个内存块,拥有特定的值,支持特定类型的相关操作。

Python 的引用

  • 引用
    在Python 中,变量也成为:对象的引用。因为,变量存储的就是对象的地址。
    变量通过地址引用了“对象”
    变量位于:栈内存
    对象位于:堆内存
    Python 是动态类型语言
    变量不需要显式声明类型。根据变量引用的对象,Python 解释器自动确定数据类型。
    Python 是强类型语言
    每个对象都有数据类型,只支持该类型支持的操作。

Python 的标识符

  • 标识符
    标识符:用于变量、函数、类、模块等的名称。
  1. 区分大小写。如:sxt 和SXT 是不同的
  2. 第一个字符必须是字母、下划线。其后的字符是:字母、数字、下划线
  3. 不能使用关键字。比如:if、or、while 等。
  4. 以双下划线开头和结尾的名称通常有特殊含义,尽量避免这种写法。比如:__init__是类
    的构造函数。

约定Python 标识符命名规则遵守如下规则:在这里插入图片描述

python的变量和简单赋值语句

  • 变量和简单赋值语句
    1.变量的声明和赋值用于将一个变量绑定到一个对象上,格式如下:
    变量名= 表达式。
    2.变量在使用前必须先被初始化(先被赋值)。
    3.可以通过del 语句删除不在使用的变量。如果对象没有变量引用,就会被垃圾回收器回收,清空内存空。
    4.链式赋值用于同一个对象赋值给多个变量。
    x=y=123 相当于:x=123; y=123。
    5.系列数据赋值给对应相同个数的变量(个数必须保持一致)

a,b,c=4,5,6

python的数据类型和运算符

  • 最基本内置数据类型和运算符
    每个对象都有类型,python 中最基本的内置数据类型:
  1. 整型
    整数,2345,10,50
  2. 浮点型
    小数,3.14 或者科学计数法314e-2
  3. 布尔型
    表示真假,仅包含:True、False
  4. 字符串型
    由字符组成的序列。“abc”,”sxt”,“尚学堂”,”百战程序员”
  • 数字和基本运算符
    在这里插入图片描述
    使用divmod()函数同时得到商和余数:
>>> divmod(13,3)
(4, 1)
  • 整数
    Python 中,除10 进制,还有其他三种进制:
    ·0b 或0B,二进制0 1
    ·0o 或0O,八进制0 1 2 3 4 5 6 7
    ·0x 或0X,十六进制0 1 2 3 4 5 6 7 8 9 a b c d e f
>>> 12
12
>>> 0b101
5
  • 类型转换
  1. 浮点数直接舍去小数部分。如:int(9.9)结果是:9
  2. 布尔值True 转为1,False 转为0。如:int(True)结果是1
  3. 字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则报错
>>> int("456")
456

整数和浮点数混合运算时,表达式结果自动转型成浮点数。比如:2+8.0 的结果是10.0

  • 浮点数
    浮点数,称为float。
    比如:3.14,表示成:314E-2 或者314e-2。
    这些数字在内存中也是按照科学计数法存储。

  • 类型转换和四舍五入

  1. 类似于int(),我们也可以使用float()将其他类型转化成浮点数。
  2. 整数和浮点数混合运算时,表达式结果自动转型成浮点数。比如:2+8.0 的结果是10.0
  3. round(value)可以返回四舍五入的值
    注:但不会改变原有值,而是产生新的值
  • 增强型赋值运算符
    在这里插入图片描述
  • 时间的表示
    计算机中时间的表示是从“1970 年1 月1 日00:00:00”开始,以毫秒(1/1000 秒)
    进行计算。

在这里插入图片描述
python 中可以通过time.time() 获得当前时刻,返回的值是以秒为单位,带微秒(1/1000 毫秒)精度的浮点值。

>>> import time
>>> b = int(time.time())
>>> b
1530168754
  • 布尔值
    Python3 中,把True 和False 定义成了关键字,但他们的本质还是1 和0,甚至可以和数
    字相加。

-比较运算符

运算符描述
==等于- 比较对象的值是否相等(a == b) 返回False。
!=不等于- 比较两个对象的值是否不相等(a != b) 返回true.
>大于- 返回x 是否大于y(a > b) 返回False。
<小于- 返回x 是否小于y。(a < b) 返回true。
>=大于等于- 返回x 是否大于等于y。(a >= b) 返回False。
<=小于等于- 返回x 是否小于等于y。(a <= b) 返回true。
  • 逻辑运算符
    在这里插入图片描述

  • 同一运算符
    在这里插入图片描述
    is 与== 区别:
    is 用于判断两个变量引用对象是否为同一个,既比较对象的地址。
    == 用于判断引用变量引用对象的值是否相等,默认调用对象的__eq__()方法。

  • 基本运算符
    在这里插入图片描述

  • 复合赋值运算符
    在这里插入图片描述

  • 运算符优先级问题

如下优先级,从高到低。
在这里插入图片描述

  • 类型转换和四舍五入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值