学习目标:
3天掌握 python 入门知识
学习内容:
提示:(只不太熟悉的我会标记)
一、 变量,运算符与数据类型
1.算数运算符
2.比较运算符
3.逻辑运算符
4.位运算符
- bin: 二进制函数
- ob二进制标识
5.三元运算符
6.其他运算符
- ==,=!,比较的是值
7.运算符的优先级
8.变量和赋值
- 变量:字母,数字,下划线但不以字母开头。大小写敏感。
pop()函数:移除列表最后一个元素(默认)。可以选择从0开始(加list才可以)。
9.数据类型及转换
- type():数据类型
- .bit.lenght():二进制长度
- 有时候我们想保留浮点型的小数点后 n 位。可以用 decimal 包里的 Decimal 对象和 getcontext() 方法来实现;保留小数点后的位数 ,用 getcontext().prec=位数。
- 布尔 (boolean) 型变量只能取两个值,
True
和False
- 确定bool(X) 的值是 True 还是 False,就看 X 是不是空,空的话就是 False,不空的话就是 True;对于数值变量,0, 0.0 都可认为是空的;对于容器变量,里面没元素就是空的
- 获取类型信息:type(object)(不考虑继承);如果要判断两个类型是否相同推荐使用 isinstance()(考虑继承)
- 类型转换:类型(内容)
10.print 函数
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
- 以str方式输出
- sep:分割符
- end:默认换行,不换行用&
- file:定义输出文件
- fule:直接输出不缓存
二、 位运算
- 原码,反码和补码
正数:原码(符号位0+二进制)->不变->不变
负数:原码(符号位1+二进制)->符号位不变其余取反->+1 - 按位运算
- 利用位运算实现快速实现
- 利用位运算实现整数集合(0x十六,0b二进制):
python:bin(负数):-+原码
Python:整形是补码形式存在的。‘
Python:整形不限制长度,不溢出。
三、 条件语句
- if语句:后一句是真的时候才执行。
- if-else:
- if - elif - else 语句
- assert 关键词:意为断言,后面条件为false时抛出AssertionError异常
四、 循环语句
- while循环
- while - else 循环:有break就跳出循环
- for 循环:for 迭代变量 in 可迭代对象:代码块
member = ['张三', '李四', '刘德华', '刘六', '周润发']
for each in member:
print(each)
# 张三
# 李四
# 刘德华
# 刘六
# 周润发
for i in range(len(member)):
print(member[i])
# 张三
# 李四
# 刘德华
# 刘六
# 周润发
#rang返回对象
dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
for key, value in dic.items():
print(key, value, sep=':', end=' ')
# a:1 b:2 c:3 d:4
#items遍历数组
- for - else 循环
- range() 函数:range(star] ,stop step=“跨度”)
- enumerate()函数:enumerate(sequence(一个序列对象), [start=0](起始位))),返回枚举对象。
languages = ['Python', 'R', 'Matlab', 'C++']
for language in languages:
print('I love', language)
print('Done!')
# I love Python
# I love R
# I love Matlab
# I love C++
# Done!
for i, language in enumerate(languages, 2):
print(i, 'I love', language)
print('Done!')
# 2 I love Python
# 3 I love R
# 4 I love Matlab
# 5 I love C++
# Done!
- break 语句:跳出循环
- continue 语句
- pass 语句:意思是“不做任何事”,如果你在需要有语句的地方不写任何语句,那么解释器会提示出错,而 pass 语句就是用来解决这些问题的。
- 推导式
x = [i ** 2 for i in range(1,10)]
print(x)
# [1, 4, 9, 16, 25, 36, 49, 64, 81]
x = [i ** 2 for i in range(10)]
print(x)
#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
a = (x for x in range(10))
print(a)
# <generator object <genexpr> at 0x0000025BE511CC48>
print(tuple(a))
# (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
b = {i: i % 2 == 0 for i in range(10) if i % 3 == 0}
print(b)
# {0: True, 3: False, 6: True, 9: False}
c = {i for i in [1, 2, 3, 4, 5, 5, 6, 4, 3, 2, 1]}
print(c)
# {1, 2, 3, 4, 5, 6}
五、 异常处理
- Python 标准异常总结
- Python标准警告总结
- try - except 语句
try:
s = 1 + '1'
int("abc")
f = open('test.txt')
print(f.read())
f.close()
except (OSError, TypeError, ValueError) as error:
print('出错了!\n原因是:' + str(error))
# 出错了!
# 原因是:unsupported operand type(s) for +: 'int' and 'str'
- try - except - finally 语句:无论如何都会执行代码
- try - except - else 语句:必须以except为前提
try:
fh = open("testfile.txt", "w")
fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
print("Error: 没有找到文件或读取文件失败")
else:
print("内容写入文件成功")
fh.close()
# 内容写入文件成功
- raise语句:使用raise语句抛出一个指定的异常。
学习时间:
2021/23—2021/25.
python版本3.8.