数据类型
计算机顾名思义是用来计算数字的机器,但计算机不可能只能用来计算数值,还可以处理图像,声音,文本,视频等等,不同的数据就需要定义不同的数据类型,下面就先介绍几个python中的几个简单的数据类型
整型数
整型数是不带有小数部分的数据,包括自然数,0,负数
如: -7, 0,300等
整型字面值的表示方式
十进制表示
10 100 -100 9999999999999
八进制方式表示(0o开头,后跟0~7)
0o11 (9) 0o177 (127)
十六进制表示(0x开头,后跟0~9,A-F或 a-f)
注:a表示10, b表示11, ... f表示15
0x11 (17) 0xFF (255)
二进制的表示(ob开头,后跟0~1)
0b111 (7) 0b1000 (8)
浮点型数 float
浮点型数是带有小数部分的数字(小数部分可以是0)
浮点型数的两种表示方式:
小数形式
3.14 3.1 3.0 3. 0.14 .14
科学计数法
格式:
小数e/E(正负号)指数
如:
6.18E-1 (等同于 0.618)
2.9979e8 # 等同于 299790000.0
复数 complex
分为两部分:
实部(real) 虚部(image)
注:虚部是以j或J结尾的
复数的字面值表示
1j (2J) 1+1J 1-1j (-100+100J)
布尔型数 bool
用来表示真和假两种状态的类型
True 表示真(条件满足可成立)
False 表示假(条件不满足或不成立)
说明:
True 的值是1
False 的值是0
空值 None
None 是一个表示不存在的特殊对象
作用:
用来占位
变量解除绑定
变量
什么是变量
变量是关联一个对象的标识符
变量可以绑定一个对象,并可以通过变量名来使用这个对象
标识符的命名方法
标识符必须为字母或下划线开头,后跟字母或下划线或数字
说明:
不能使用python的关键字作变量名
python变量名区分大小写
合法的变量名示例:
a a1 b bbb _a __ABCD var a1b2
不合法的变量名示例:
1a 123 $ABC +a -b @abc
python 的关键字(共33个):
赋值语句 =
语法:
变量名 = 表达式
或
变量名1 = 变量名2 = 变量名3 = 表达式
或
变量名1, 变量名2, 变量名3, ... = 序列
作用:
创建一个变量或修改一个变量的绑定的对象
说明:
当变量不存在时,创建该变量,同时将变量绑定在这个对象上
当变量存在时,改变此变量绑定的对象
一个变量只能绑定一个对象
两个变量可以同时绑定在同一个对象上
示例:
a = 10
b = 20
a = b # a绑定在b绑定的对象上,a与10解绑,绑定在20上
a = 6
b = 4
area = a * b # 等同于area = 6 * 4
x = y = z = 1000
x, y = 300, 400 # x绑定300, y绑定400
python 中自动化内存管理(重点)
a = 10000
b = 20000
a = a + b # 发生了什么事
c = a # a和c同时绑定的3000这个对象上
python中 关联/绑定/引用的含义
在python中,变量没有类型
关联/绑定/引用都是指一个变量和一个对象的关联关系
在交互模式下查看当前作用域内的所有变量
>>> help("__main__")
退出键: q
注:help函数用来查看帮助或运行时信息
del 语句(delete简写)
用于删除变量,同时解除此变量与对象的绑定关系,如果可能则释放对象
语法:
del 变量名
自动化内存管理和引用计数
每个对象会记录有几个变量引用自身,当引用的数量为0时此对象被销毁,此种自动化内存管理的方式叫引用计数
a = 10000
b = 20000
a = b # 释放10000 同时a绑定在20000上
is / is not 运算符
作用:
判断两个对象是否是同一个对象,当是同一对象时返回True,否则返回False
is not 的作用与is相反
语法:
x is y
x is not y
id(x) 函数
作用:
返回一个对象在内存中的地址
算术运算符:
+ 加法
- 减法
* 乘法
/ 除法
// 地板除 floordiv
% 求余
** 幂运算
/ 除法
除法得到的数是浮点型数,不会丢弃小数部分
1 / 3 得 0.333333333333
8 / 2 得 4.0
// 地板除
除的结果去掉小数部分向下取整
7 / 3 得 2.3333333333
7 // 3 得 2
8 // 3 得 2
3.25 // 1.5 得 2.0
% 求余
7 % 3 得 1
3.25 % 1.5 得 0.25
** 幂运算
格式:
x ** y
意为x的y次方
4 ** 2 得 16
3.0 ** 4.0 得 81.0
5.6 ** 1.418
运算符的优先级
**
* / // %
+ -
示例:
1 + 3 * 3 ** 2 + 4 // 2
1 + 3 * 9 + 4 // 2
1 + 27 + 4 // 2
1 + 27 + 2
28 + 2
30
括号分组子表达式
用 () 可以将表达式分组,()内部的表达式先进行计算
(1 + 3) * 3 ** (2 + 4) // 2
4 * 3 ** (2 + 4) // 2
4 * 3 ** 6 // 2
4 * 729 // 2
2916 // 2
1458
基本输出函数 print
格式:
print(要打印的东西)
课后习题:
1、中国古代的秤是16两一斤,请问中国古代的270两是古代的几斤几两,写程序打印出来
2、从凌晨 0:0:0 计时,到现在已经过了63320秒,请问现在是几时几分几秒? 写程序打印出来
提示:可以用地板除和求余来实现
3、温度转换
摄氏温度 = 5.0/9.0*(华氏温度-32)
开氏温度 = 摄氏温度 + 273.15
问:
100华氏温度转为摄氏温度是多少度?
转为开氏温度是多少度?
想要看更多的课程请微信关注SkrEric的编程课堂