阿里云天池 Python训练营 Task01
- 学习链接: https://tianchi.aliyun.com/s/58327c15d1faee512c008128d3bb9e32
- 今日学习任务: Task01中的前两个章节: (1) 变量、运算符与数据类型 (2) 位运算
- 记录笔记: 学习完成之后,选择任意平台进行自我知识总结即可(今天学到了什么将来可能需要复习的知识点,用笔记来方便自己复习)知乎、CSDN、Github等。(如果对记笔记有疑惑,欢迎讨论)
变量、运算符与数据类型
变量
Python是强类型语言,Python很少会隐式地转换变量的类型。 强类型:不允许不同类型相加。例如:整形+字符串会报类型错误。
1. 变量命名
- 变量名只能是字母,数字,下划线的组合,注意不能用数字开头
- 变量名不能含有特殊符号,不能使用关键字(保留字)
- 大小写敏感,不能混用
2. 使用变量前,需要赋值
在python中,我们对变量进行赋值的时候,用的是一个等于符号(=),要注意不是两个(==)。
3. 全局变量与局部变量
- 全局变量是定义在外面的变量
- 局部变量就是定义在一个函数体内部的变量
- 在函数体内部使用全局变量 global关键字
注释
1. 单行注释
单行注释 #
2. 多行注释
多行注释 '''或者""" 多行注释操作 选中+ 快捷键 ctrl+/
运算符
- 加+ 减- 乘* 除/
- 整除//
- 取余%
- 幕**
数据类型与转换
1. 数据类型
- 整型 (int)
整型或整数,是正或负整数,不带小数点
- 浮点型 (float)
浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
- 布尔型 (bool)
布尔 (boolean) 型变量只能取两个值,True 和 False。当把布尔型变量用在数字运算中,用 1 和 0 代表 True 和 False
3.类型转换
- 转换为整型 int(x, base=10)
- 转换为字符串 str(object='')
- 转换为浮点型 float(x)
3.类型输出
- type() 函数 ype() 不会认为子类是一种父类类型,不考虑继承关系
- isinstance() 函数 isinstance() 会认为子类是一种父类类型,考虑继承关系
注意:如果要判断两个类型是否相同推荐使用 isinstance()
print函数
打印输出,可调试输出,print()
print("hello world!")
在 Python 中 print 默认是换行的,要想不换行你应该写成 print(i, end = '' )
位运算
1. 原码、反码和补码
- 原码
二进制表示(注意,有一位符号位)
00 00 00 11 -> 3
10 00 00 11 -> -3
- 反码
正数的反码就是原码,负数的反码是符号位不变,其余位取反(对应正数按位取反)
00 00 00 11 -> 3
11 11 11 00 -> -3
- 补码
正数的补码就是原码,负数的补码是反码+1
00 00 00 11 -> 3
11 11 11 01 -> -3
符号位:最高位为符号位,0表示正数,1表示负数。在位运算中符号位也参与运算
2. 按位运算
- 非(~)
取反(0 变为 1,1 变为 0)
~ 1 = 0
~ 0 = 1
- 与(&)
只要两个对应位都有一个 1 时就为 1
1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0
- 或(|)
1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0
只要两个对应位中有一个 1 时就为 1
3.按位左移操作 <<
num << i 将num的二进制表示向左移动i位所得的值
4.按位右移操作 >>
num >> i 将num的二进制表示向右移动i位所得的值
5.Python 的bin() 输出
- Python中bin一个负数(十进制表示),输出的是它的原码的二进制表示加上个负号,巨坑。
- Python中的整型是补码形式存储的。
- Python中整型是不限制长度的不会超范围溢出。