第一节课 python简介
一、python特性概要
1. Python是解释性语言。我们和c比较一下。
2. Python特性总结:字节码、动态、缩进
2.1 字节码
2.2 动态语义 在赋值时确定数据类型
2.3 缩进
3. Python之禅
解释性语言的内部机制,在运行脚本之前,得到结果之后:
1) Python先将脚本编译成字节码(pyc,pyo)
2) python虚拟机解释并运行字节码文件
二、无规矩不成方圆。简述Python编程的基本方式。
1. 一个基本的Python脚本
2. 你已经写好一个模块了
3. 我们回头来继续讲解字节码
4. 如何优美的处理结构。反斜杠'\' 与 小括号 '()'
继续讲解字节码,字节码是Python执行后编译的文件
mkdir test1 cp stand.py test1/ cp hello.py test1/ cd test1 ls -l hello.py stand.py python hello.py 这是一个标准模块脚本的写作范式,此处为该脚本文档 这是一个全局变量 hello world ls -l hello.py stand.py stand.pyc rm stand.py ls -l hello.py stand.pyc python hello.py 这是一个标准模块脚本的写作范式,此处为该脚本文档 这是一个全局变量 hello world nano stand.py
三、对变量、对象及赋值的解析
1. 不记住就完蛋了
1.1 记住:一切数据都是对象
1.2 记住:一些变量都是对数据对象的引用
引用:当数据对象赋值给某个变量时,则该变量 引用了该 数据对象。
1.3 分析:Python内部的引用计数。sys.getrefcount
d="4" 将整型对象赋值给变量d
我是字符串对象“4”,我被创建出来了,我赋值给了对象d
我是变量d, 因为字符串对象“4” 赋值到我这里来了,我被创建出来了。 我这里存了一个字符串对象的地址,就是“4”的位置. 我没有存字符串对象的数据哦,这就是引用。
用户请求d的是后,把对应地址的“4”输出到了屏幕.
>>> a1 = 2 >>> import sys >>> sys.getrefcount(2) 82 >>> a2 = 2 >>> sys.getrefcount(2) 83 >>> a3 = 2 >>> sys.getrefcount(2) 84 >>> del a1 >>> sys.getrefcount(2) 83 >>> del a2 >>> sys.getrefcount(2) 82 >>>
自行车的车架、轮胎、脚踏、刹车、链条等25个部件中,其基本部件缺一不可。
其中,车架是自行车的骨架,它所承受的人和货物的重量最大。按照各部件的工作特点,大致可将其分为导向系统、驱动系统、制动系统:
1.导向系统:由车把、前叉、前轴、前轮等部件组成。乘骑者可以通过操纵车把来改变行驶方向并保持车身平衡。
2.驱动(传动或行走)系统:由脚蹬、中轴、牙盘、曲柄、链条、飞轮、后轴、后轮等部件组成。人的脚的蹬力是靠脚蹬通过曲柄,链轮、链条、飞轮、后轴等部件传动的,从而使自行车不断前进。
3.制动系统:它由车闸部件组成、乘骑者可以随时操纵车闸,使行驶的自行车减速、停驶,确保行车安全。
对象: 自行车
对象 属性:车架、轮胎、刹车、链条
对象 方法:导向系统、驱动(传动或行走)系统、制动系统
这些方法组装集合了对象的属性来给我们提供了便利的条件,而使得部门不必面对一个个原件. 我们只需要知道方法就知道怎么使用它. str 去掉空格. lstrip rstrip replace
2. 变量命名的规范
2.1 记住只能做什么。用字母和_开头
2.2 记住不能做什么。不能用关键字,比如 for if while and 等等
2.3 怎么搭配最合理:文件名小写,变量小写,函数名小写。 _让变量更清晰
2.4 大小写敏感
3. 赋值
3.1 记住动态特性
3.2 多重赋值
3.3 删除
a, b, c = 'a', 4, True 本质上是 a, b, c = ('a', 4, True) del a, b >>> a, b, c = 'a', 4, True >>> type(a) <type 'str'> >>> type(b) <type 'int'> >>> type(c) <type 'bool'> >>> e,f,g = ('a',4,True) >>> type(e) <type 'str'> >>> type(f) <type 'int'> >>> type(g) <type 'bool'> >>> del a, b >>> a Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a' is not defined >>>
四、伴随一生
1. 三内置必须用熟. type help dir
2. 用内置去自学str对象
3. 我得处理一个糟糕的结尾和开头都有空格的字符创。我该怎么做.