PYTHON1.day01
python程序的组成:
程序由模块组成
模块由语句,函数,类,数据等组成
语句包含表达式
表达式建立并处理数据对象
python 注释
以 # 号开头,至直行尾
python 核心数据类型:
数字(整型int,浮点型float,复数complex, 布尔型bool)
字符串
列表等
整型数int
整型数是不带小数部分的数字。包括自然数,0,及负数
如 : -5, 10000, 0等
整型数的字面值表示方式:
十进制表示:
10
200
99999999
9999999999999999999999999999999999
二进制表示(0b开头,后跟0~1):
0b111
0b101
0b11111111
八进制方式表示(0o开头,后跟0~7)
0o177 # 127
0o11 # 9
十六进制表示(0x开头,后跟0~9, A~F,a-f)
0x11 # 17
0xFF # 255
0x1234ABCD
进制转换:
十进制(逢十进一)
二进制(逢二进一)
八进制(逢八进一)
十六进制(逢十六进一)
练习:
计算 0xFFFF 表示多少 65535
计算 0b1001 表示多少 9
计算 0o71 表示多少 57
试把 13 转为二进制表示 0b1101
把 18 转为十六进制表示 0x12
浮点型数 float
浮点型数是带有小数部分的数字
表示方式:
小数形式:
3.14 3.1 3. 0.14 .14
科学计数法:
格式:小数 e/E(正负号) 指数
如:6.18E-1
2.9979e8
复数 complex
分为两部分:
实部(real)
虚部(image)虚部以j或J结尾
字面值
1j, (2j), 1+1J, 3-4J, (-100+100J)
布尔类型数bool
用来表示真和假两个状态的类型
True 表示真(条件满足或成立)
Flase表示假(条件不满足或不成立)
说明:
True 的值为1
False 的值为0
空值 None 对象
None 是一个表示不存在的特殊对象
作用:
用来占位
用来变量解除绑定
表达式和运算符(也叫操作符)
表达式 expression
由一个数字或数字和运算符组成
作用:通常让计算机做一些事情并返回结果
例:1 + 2
运算符:
算术运算符:
+ 加法
- 减法
* 乘法
/ 除法
// 地板除
% 求余
** 幂运算
除法:
除法得到的数是浮点数,不会丢弃小数部分
1/3 = 0.3333333333333333
4/2 = 2.0
// 地板除
除的结果去掉小数部分向下取整
7 / 3 # 得2.333333333333
7 // 3 # 得2
8 // 3 # 得2
3.25 // 1.5 # 得 2.0
% 求余(也叫取模)
10 % 3 # 得 1
3.25 % 1.5 # 得 0.25
** 幂运算
格式:
x ** y 意为 x 的 y次方
4 ** 2 # 得 16
3.0 ** 4.0 # 得 27
5.6 ** 1.418 # 得
用交互模式求:
1. 一个商店卖西瓜7元一个,你带20元组能买几个西瓜,找零多少钱?
2. 一个学生毕业的薪资10000元,每年涨20% 十年后他的薪资是多少?
运算符的优先级
**
* / // %
+ -
示例:
1 + 3 * 3 ** 2 + 4 // 2
1 + 3 * 9 + 4 // 2
1 + 27 + 4 // 2
1 + 27 + 2
28 + 2
30
括号分组子表达式
用()可以将表达式分组,()内的表达式先进行计算
混合类型自动升级
1 + 2.14 返回浮点数 3.14
基本输出函数:print
格式:print(要打印的数据),各个数据可以用逗号“,”隔开
示例:print('hello')
print(1+2+3)
练习:在终端打印:
*********
* *
* *
*********
2. 已知矩形的边长6厘米,短边长4厘米,写程序求出这个矩形的周长和面积
变量 variable
用来绑定数据对象的标识符
变量的命名规则:
1. 变量名必须为字母或下划线开头,后跟字母或下划线或数字
2. 不能使用python的关键字命名
合法的变量名示例:
a a1 b bbb _aaa_ _Abcdvara1b2c2
不合法的变量名示例:
1a 123 $ABC +a -b #ab @ab
python 的关键字:
True ,False, None is del if elif等
赋值语句 statement
语法:
变量名 = 表达式
或
变量名1 = 变量名2 = 表达式
或
变量名1 ,变量名2,... = 序列
作用:用于创建变量并将变量绑定(或关联)在一个对象上
说明:
1.当变量不存在时,创建该变量同时绑定在这个对象上
2.当变量存在时,改变此变量的绑定的对象
3.一个变量只能绑定一个对象
4.两个变量可以同时绑定同一个对象
示例:
a = 10 # 创建a变量,和10绑定在一起
b = 20
c = a + b #创建变量c,和10 + 20 的结果绑定在一起
练习:
指定一个圆的半径R为2cm,
1.计算出圆的周长是多少厘米?
2.计算出圆的面积是多少平方厘米?
(要求:用变量替代2cm,和圆周率3.1415926)
python 中的名词:关联/绑定/引用的含义
python中,变量没有类型
关联/绑定/引用都是指变量和一个对象的关联关系
在交互模式下查看变量的绑定关系:help('__main__')
python 中的自动化内存管理:
a = 10000
b = 20000
a = a + b #过程怎么进行的
序列赋值的语法:
变量名1,变量名2,... = 对象1,对象2...
变量名1,变量名2,... = [对象1,对象2...]
变量名1,变量名2,... = (对象1,对象2...)
思考:变量的交换绑定
练习:已知有两个变量:a 绑定 10000 b 绑定 20000
问:在不创建任何新的对象的情况下,如何让a和b 交换绑定的对象?
方法1:
a = 10000
b = 20000
temp = a #借助第三个变量,经典交换算法
a = b
b = temp
方法2:序列赋值 a, b = b , a
is / is not运算符
作用:判断两个对象是否绑定同一个对象,如果是同一个对象返回Ture,否则返回 False
is not 与 is 相反
语法:x is y
x is not y
a = 10000
b = 10000
a is b # False
小整数对象池:
CPython中整数 -5 至 256 永远保存在小整数池中,不会释放并可以重复使用
示例:
a = 5
b = 5
a is b # True
id 函数:
格式:id(对象)
作用:返回一个对象在内存中的地址
del 语句(del 是 delete 的简写)
作用:用于删除变量,同时删除与对象的绑定关系。如果可能则释放对象
语法:del 变量名
python 的内存管理和引用计数
每个对象都会记录有几个变量引用自身,当引用的数量为0时,则对象被销毁,此种自动化内存管理的方式叫引用计数。
复合赋值算术运算符:
运算符说明
y += x 等同与 y = y + x
y -= x 等同与 y = y - x
y *= x 等同与 y = y * x
y /= x 等同与 y = y / x
y %= x 等同与 y = y % x
y //= x 等同与 y = y // x
y **= x 等同与 y = y ** x
练习:
1.在终端输出图形:
*
***
*****
*******
2.古代的秤是16两一斤,请问216两是几斤几两?写程序打印出来
3.从凌晨0:0:0计时,现在已经过了63320秒请问现在是几时几分几秒?写程序打印出现在的时间。