想开个学习笔记系列,就是拉一遍python开发知识,希望可以涵盖编程基础、python基础、数据分析、web框架等。
本笔记系列由视频跟学+知识点补充组成,大致会按照视频教程划分目录,补充知识点参考文章将会进行标注。
视频课程地址:https://edu.csdn.net/course/detail/10041
目录
1.python四则运算
#加减乘除
print(5+5)
print(5-5)
print(5*5)
print(5/5)
#复合运算
print(5+5-(6+2)*3-2/1)
#output
10
0
25
1.0
-16.0
2.浮点数 float
计算机中存储数据用二进制
浮点数方式:1.定点方式 2.浮点方式
print(type(3))
print(type(3.5))
print(type(3.5+3)) #int + float 结果为float类型
#output
<class 'int'>
<class 'float'>
<class 'float'>
注意:
print(0.1+0.2)
#output
0.30000000000000004
按照常理0.1+0.2应该严格等于0.3,此处等于0.30000000000000004是因为在计算机中0.1和0.2是二进制存储,小数可能无法精确转换为某一个二进制,此处0.1转换为一个无限二进制,舍弃位数存储后再相加转为十进制就不会很精确。一般应对此情况的处理方式是取前n位有效精度。
3.字符串运算
print('haha'+'heihei') #字符串拼接(不支持减法)
print('haha'*3) #拼接扩展(不支持除法)
#output
hahaheihei
hahahahahaha
4.python中的进制
print(int('0xf', 16)) # 十六进制转十进制
print(int('0b101', 2)) # 二进制转十进制
print(int('011', 8)) # 八进制转十进制(数字前面+0也是八进制)
print(int('0o11', 8)) # 八进制转十进制
print(bin(12)) # 十进制转二进制
print(hex(12)) # 十进制转十六进制
print(oct(9)) # 十进制转八进制
#output
15
5
9
9
0b1100
0xc
0o11
5.python注释
注释的作用是帮助人进行代码理解
# 这是单行注释
# 以下是多行注释
'''
这是多行注释
这是多行注释
'''
"""
这也是多行注释
这也是多行注释
"""
6.运算符
算数运算符:
不赘述,7个:+、-、*、/、//(向下取整)、%(取模)、**(幂运算符)
比较运算符:
不赘述,7个:==、>、<、!=、<>(不等于,3.0版本以失效)、>=、<=
赋值运算符:
不赘述,8个:=、+=、-=、*=、/=、%=、//=、**=
逻辑运算符:
不赘述,and、or、not
位运算符:
二进制每一位进行运算:<<、>>、&、|、~、^
,如下:
a = 0b00001101
b = 0b00001001
c = 0b1101
print(a&b) #1001 = 9
print(a|b) #1101 = 13
print(a^b) #0100 = 4
print(~c) #1111 0010 = -14
#补码规则:正数:原码就是补码 负数:原码取反+1
print(a << 1) #00011010 = 26
print(b >> 1) #00000110 = 6
成员运算符:
不赘述,in、not in
身份运算符:is、not is
(注意,is/not is比较的是id()地址)
a = 1
b = a
print(id(a) == id(b)) #True
print(a is b) #True
print(a is not b) #False
a = 2
print(id(a) == id(b)) #False
注意:对于字符串和数字来说,如果两个变量相同,则他们身份是相同的,这是由于在python中对于字符串和数字有一些内存优化
。而假如是两个相同的空列表,则身份不同。
7.Number类型及数值运算内置函数、math库
python3里只有整型int,浮点float,复数complex
内建函数: