目录
1.python内置的四种类型
整型 int
浮点型 float
布尔型 bool
字符串型 str
在python中变量没有类型,但对象是有类型的。
(1)整型 int
整数,20,30,1235
(2)浮点型 float
小数,6.34或科学计数法634e-2
(3)布尔型 bool
表示真假,仅包含:True、False
(4)字符串型 str
由字符组成的序列。"mno",'txt',"中心小学"
字符串型中可以用双引号" ",也可以用单引号' '。
2.数字和基本运算符
python支持整数和浮点数,我们可以对数字进行如下运算。
运算符 说明 示例 结果
+ 加法 2+5 7
- 减法 5-3 2
* 乘法 2*3 6
/ 浮点数除法 4/2 2.0
// 整数除法 10//3 3
% 模(取余) 8%3 2
** 幂 8**2 64
下面通过代码演示基本运算符的使用
1.代码
a = 2+5 #验证加法
b = 5-3 #验证减法
c = 2*3 #验证乘法
d = 4/2 #验证浮点数除法
e = 10//3 #验证整数除法
f = 8%3 #验证模(取余)
g = 8**2 #验证幂
print(a)
print(b)
print(c)
print(d)
print(e)
print(f)
print(g)
2.结果
7
2
6
2.0
3
2
64
有一点需要注意
1.代码
a = 5/0
print(a)
2.结果
Traceback (most recent call last):
File "D:\Python\pycharm\pycharmexec\mypro01\practise01.py", line 1, in <module>
a = 5/0
ZeroDivisionError: division by zero
被除数不能为0,否则会报错,我们需要遵守基本的运算规则。
补充:
使用divmod()函数同时得到商和余数:
1.代码
print(divmod(6,4)) #同时得到商和余数
2.结果
(1, 2)
divmod()是一个函数,在函数阶段学习会详细讲解,它返回一个元组。
3.三种进制
python中,除了十进制,还有其他三种进制,这跟我们学习其他语言也是一样的。
- 0b或0B,二进制0 1
- 0o或0O,八进制0 1 2 3 4 5 6 7
- 0d或0D,十进制0 1 2 3 4 5 6 7 8 9
- 0x或0X,十六进制0 1 2 3 4 5 6 7 8 9 a b c d e f
除了十进制,剩下三种进制可以方便的进行"位运算"操作。
0b11
3
0o77
63
0xff
255
4.使用int()实现类型转换
- 浮点数直接舍去小数部分。例如:int(6.2)结果是:6
- 布尔值True转为1,False转为0。例如:int(False)结果是0
- 字符串符合整数格式(浮点数格式不行)则直接转为对应整数,否则报错
1.代码
a = int(6.2)
b = int(False)
c = int("234")
'''d = int("234abc") #报错,Traceback (most recent call last):
File "D:\Python\pycharm\pycharmexec\mypro01\practise01.py", line 4, in <module>
d = int("234abc")
ValueError: invalid literal for int() with base 10: '234abc'
'''
print(a)
print(b)
print(c)
#print(d)
2.结果
6
0
234
5.自动转型
整数和浮点数混合运算时,表达式结果自动转型成浮点数。例如:3+5.8的结果是8.8
1.代码
a = 3+5.8
print(a)
2.结果
8.8
6.整数可以任意大
python2中,int是32位,可以存储从-2147483648(-2**32)到2147483647(2**32-1)的整数(约为+-21亿)。long类型是64位,可以存储:-2**63----2**63-1之间的数值
python3中,int可以存储任意大小的整数,long被取消。
python3中可以做超大数的计算,而不会造成“整数溢出”,这也是python特别适合科学运算的特点。
补充:int("326.123")
1.代码
a = int("326.123")
print(a)
2.结果
Traceback (most recent call last):
File "D:\Python\pycharm\pycharmexec\mypro01\practise01.py", line 1, in <module>
a = int("326.123")
ValueError: invalid literal for int() with base 10: '326.123'
int不能一下子转两次,可以实现int(326.123)=326或int("326")=326
7.浮点数
- 浮点数用科学计数法表示。例如:6.31,表示成:631E-2或者631e-2
- 这些数字在内存中也是按照科学计数法存储。
8.类型转换和四舍五入
- 类似于int(),我们也可以使用float()将其他类型转化为浮点数。
- 整数和浮点数混合运算时,表达式结果自动转换成浮点数。例如:3+5.8的结果是8.8
- round(value)可以返回四舍五入的值。但不会改变原有值,而是产生新的值。
1.代码
a = 6.578
b = round(a) #四舍五入后为7
c = 7.3
d = 7.3
print(a)
print(b)
print(c)
print(d)
print(id(a))
print(id(b))
print(id(c))
print(id(d))
2.结果
6.578
7
7.3
7.3
1702564521008
1702563479984
1702563495056
1702563495056
Process finished with exit code 0
a和b的地址不同,所以a和b不是同一个对象,c和d是同一个值,所以他们引用的对象相同,所以他们是通过一个值,所以round(value)生成了新的值。
9.增强型赋值运算符
运算符+、-、*、/、//、**、和%和赋值符=结合可以构成“增强型赋值运算符”。
运算符 例子 等价
+= a += 5 a = a + 5
-= a -= 2 a = a - 5
*= a *= 5 a = a * 5
/= a /= 5 a = a / 5
//= a //= 5 a = a // 5
**= a **= 5 a = a ** 5
%= a %= 5 a = a % 5
注意:
- “+=” 中间不能加空格
- 结合的是右侧整个表达式:
例如:y *= x+5 #相当于:y = y*(x+5) 而不是:y = y*x+5
10.时间的表示
计算机中的时间的表示是从 “1970年1月1日 00:00:00” 开始的,以毫秒(1/1000秒)进行计算。我们也把1970年这个时刻成为 “unix时间点” 。
python中可以通过time.time()获得当前时刻,返回的值是以秒为单位,带微秒(1/1000毫秒)精度的浮点值。例如13568448.123548,因为精度是微秒也就是1e-6秒(1/1000000秒)
1.代码
import time #导入时间模块
time.time() #获得当前时刻
totalSeconds = time.time() #总的秒数
totalMinutes = totalSeconds/60 #总的分钟数
totalHours = totalMinutes/60 #总的小时数
totalDays = totalHours/24 #总的天数
totalYears = totalDays/365 #总的年数,不考虑闰年
print(totalSeconds)
print(totalMinutes)
print(totalHours)
print(totalDays)
print(totalYears)
2.结果
1654998381.4628398
27583306.357713997
459721.7726285666
19155.073859523607
52.47965440965372
也可以通过整型转换成整数
1.代码
import time #导入时间模块
time.time() #获得当前时刻
totalSeconds = int(time.time()) #总的秒数
totalMinutes = int(totalSeconds/60) #总的分钟数
totalHours = int(totalMinutes/60) #总的小时数
totalDays = int(totalHours/24) #总的天数
totalYears = int(totalDays/365) #总的年数,不考虑闰年
print(totalSeconds)
print(totalMinutes)
print(totalHours)
print(totalDays)
print(totalYears)
2.结果
1654998498
27583308
459721
19155
52
这周就先分享到这吧,我也相当于是一个复习。