第一节-Python的安装及基本语法
1、存储二进制文件:a = b"Hello World" //加b
2、将字符型编码成二进制数据,
b = "Hello World"
print(b) //Hello World
pring(type(b)) //<class 'str'>
print(b.encode())//二进制
课后题答案:
1、2、print("余生请多多指教")
3、a = "余生请多多指教"
print(a.encode())
4、一、import math
print(log2(1024))
二、from math import log2
print(log2(1024))
5、from math import log2
print(log2(6259999))
6、shift + F10 //运行当前文件
Alt + shift + F10 //运行可选文件
选择题
7、
print(math.floor(3.14))
print(math.floor(3.92))
print(math.fabs(- 3.0))
print(math.fmod(5,3))
print(abs(3))
print(abs(- 3.0))
print(round (1.234))
print(round (1.234,2))
print(math.sqrt(9))
print(math.pow(9,2))
3
3
3.0
2.0
3
3.0
1
1.23
3.0
81.0
8、
print(math.pi)
test = "余生请多多指教"
print(test.encode(encoding="utf-8"))
a = test.encode(encoding="utf-8")
print(a.decode(encoding="utf-8"))
test = "余生请多多指教"
print(test.encode(encoding="gb2312"))
a = test.encode(encoding="gb2312")
print(a.decode(encoding="gb2312"))
print(math.pow(math.exp(1),2))
print("+")
print(math.sqrt(math.pi))
3.141592653589793
b'\xe4\xbd\x99\xe7\x94\x9f\xe8\xaf\xb7\xe5\xa4\x9a\xe5\xa4\x9a\xe6\x8c\x87\xe6\x95\x99'
余生请多多指教
b'\xd3\xe0\xc9\xfa\xc7\xeb\xb6\xe0\xb6\xe0\xd6\xb8\xbd\xcc'
余生请多多指教
7.3890560989306495
+
1.7724538509055159
上课回顾:
- System interpreter设置告诉PyCharm如何理解你的代码
- Python 3的编码
- 字节(序列)bytes:对应decode(解码)
- 字符(串)str:对应encode(编码)
- Debug方法:
- 肉眼观察法(字母拼写错误、遗漏符号、语法错误等)
本节课内容:
1、基本数据类型和运算符
- 表示数字
- 表示文字
- 基本数据结构
- 列表 List
- 字典 Dict
- 元组 Tuple
- 集合 Set
2、Python中的几类字符串变量
3、流程控制
- 条件语句
- 循环语句
4、流程干涉
- break语句
- continue语句
------------------------------------------------------------------
基本数据类型
int |
整数 |
6、100 |
|
float |
浮点数、小数 |
6.0、2.142 |
|
bool |
布尔值 |
True、Flase |
|
complex |
复数 |
3+4j、complex(3,4) |
实部虚部默认浮点数 |
- 算术运算
- 加减乘除
- 乘方:2**10=1024
- 取模 取余
- 取模:13//6 #结果是2
- 取余:13%6 #结果是1
- math模块
- from math import log2,sqrt
- 赋值运算符(一边运算一边赋值)
- a = a + 6可以写成 a += 6
- =、+=、-=、*=、/=、**=、//=、%=
- 比较运算符
- ==、!=、>、<、>=、<=
- 逻辑运算符
- and、or、not
- 位运算符(针对二进制进行运算)
- &与、I或、~非
- 成员运算符
- in、not in
- 身份运算符(返回True or Flase)
- is、is not
运算符的优先级:
- Python 3的几类字符串
- 字符串
- 字节序列
- Unicode字符串
- 流程控制
- 为什么需要流程干涉?
- 条件语句if、if else、if elif else
- 循环语句while、for
- 综合使用 之 死循环
当我们的流程出现我们不希望出现的情况时,我们引入流程干涉;
- 首先有一个流程
- 满足特定条件
- 用break、continue
1、
a = 0
sum = 0
while a <= 100:
a += 1
if a%2 == 0:
sum += a
continue
print(sum)
#结果:2550
2、
list1 = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]
list2 = ["Sun", "Sat"]
for i in list1:
if i not in list2:
print(i)
#结果:
Mon
Tue
Wed
Thu
Fri
3、 编程计算: 0101 与 0011 的三种位运算结果(与, 或, 非)
b = 0b0101
c = 0b0011
print(bin(b&c))
print(bin(c|b))
print(bin(~b))
print(bin(~c))
#结果:
0b1
0b111
-0b110
-0b100
4、如何计算10的阶乘
5、
q = 1
for q in range(0,5) :
w = 1
print("")
for w in range(0,5):
if (2>=abs(q-w)>=0)&((q+w)>=2)&((q+w)<=6):
print("*",end="")
w +=1
else:
print(" ",end="")
q +=1
结果:
*
***
*****
***
*
#q = 1
for q in range(0,5) :
#w = 1
print("")
for w in range(0,5):
if (2>=abs(q-w)>=0)&((q+w)>=2)&((q+w)<=6):
print("*",end="")
w +=1
else:
print(" ",end="")
q +=1
红色加粗注释掉后,显示效果未有变化,
思考,python里for p in range()实现,每次从起循环到尾自动完成,前开后闭
#q = 1
for q in range(0,5) :
#w = 1
print("")
for w in range(0,5):
if (2>=abs(q-w)>=0)&(6>=(q+w)>=2):
print("*",end="")
#w +=1
else:
print(" ",end="")
#q +=1
结果依然
实验证明rang()是左闭右开
故:rang(0,5)取值0、1、2、3、4
别人更好的方法:
for i in range(1,6):
star_num=5-2*abs(i-3)
black_num=abs(i-3)
print(" "*black_num+"*"*star_num)