一、变量、运算符与数据类型
1.关于注释
在python中,#表示单行注释;’’’ ‘’’ 以及""" “”"表示区间注释,在三引号之间的所有内容被注释。
# 表示注释、用于整行
"""
这是多行注释
这是多行注释
这是多行注释
"""
2.运算符
(1)算术运算符(列出不常见的)
/(除);//(整除);%(取余);**(幂);==(等于);!=(不等于)。
(2)逻辑运算符
and(与)
or(或)
Not(非)逻辑运算符输出的是TRUE和FALSE.
(3) 位运算符
按位非操作:
把Num的补码中的0和1全部取反,有符号整数的符号位在运算中同样会取反。
~1=0
~0=1
如
00 00 01 01 --> 5
11 11 10 10 -->-6
11 11 10 11 --> -5
00 00 01 00 --> 4
按位与操作&
只有两个对应位都为1时才为1
00 00 01 01–>5
&
00 00 01 10 -->6
结果为
00 00 01 00 -->4
按位或操作|
两个对应位中有一个1时就为1
00 00 01 01 -->5
|
00 00 01 10 -->6
结果为:
00 00 01 11 -->7
按位异或操作^
只有两个对应位不同时才为1
00 00 01 01 -->5
^
00 00 01 10 -->6
结果为:
00 00 00 11 -->3
并且异或操作的性质满足交换律和结合律。
按位左移操作:
num<<i ,表示将num的二进制向左移动i位所得的值
00 00 10 11–>11
11<<3
结果为:
01 01 10 00–>88
按位右移操作:num>>i,表示将num的二进制向右移动i位所得的值
00 00 10 11 -->11
11>>2
结果为:
一、变量、运算符与数据类型
1.关于注释
在python中,#表示单行注释;’’’ ‘’’ 以及""" “”"表示区间注释,在三引号之间的所有内容被注释。
# 表示注释、用于整行
"""
这是多行注释
这是多行注释
这是多行注释
"""
2.运算符
(1)算术运算符(列出不常见的)
/(除);//(整除);%(取余);**(幂);==(等于);!=(不等于)。
(2)逻辑运算符
and(与)
or(或)
Not(非)逻辑运算符输出的是TRUE和FALSE.
(3) 位运算符
按位非操作:
把Num的补码中的0和1全部取反,有符号整数的符号位在运算中同样会取反。
~1=0
~0=1
如
00 00 01 01 --> 5
11 11 10 10 -->-6
11 11 10 11 --> -5
00 00 01 00 --> 4
按位与操作&
只有两个对应位都为1时才为1
00 00 01 01–>5
&
00 00 01 10 -->6
结果为
00 00 01 00 -->4
按位或操作|
两个对应位中有一个1时就为1
00 00 01 01 -->5
|
00 00 01 10 -->6
结果为:
00 00 01 11 -->7
按位异或操作^
只有两个对应位不同时才为1
00 00 01 01 -->5
^
00 00 01 10 -->6
结果为:
00 00 00 11 -->3
并且异或操作的性质满足交换律和结合律。
按位左移操作:
num<<i ,表示将num的二进制向左移动i位所得的值
00 00 10 11–>11
11<<3
结果为:
01 01 10 00–>88
按位右移操作:num>>i,表示将num的二进制向右移动i位所得的值
00 00 10 11 -->11
11>>2
结果为:
00 00 00 10 -->2
(4) 三元运算符
x,y=4,5
if x<y:
small = x
else:
small = y
print(small)
或
x,y=4,5
small=x if x<y else y
print(small)
(5) 其他运算符
is ,is not 对比的是两个变量的内存地址
==, !=对比的是两个变量的值
##并起来
letters = ['A','B','C','D','E','F','G']
if 'A' in letters:
print('A'+' exists')
if 'h' not in letters:
print('h'+' not exists')
- 数据类型与转换
int 整型
float 浮点型
bool 布尔型
x,y=4,5
small=x if x<y else y
print(small)
(5) 其他运算符
is ,is not 对比的是两个变量的内存地址
==, !=对比的是两个变量的值
##并起来
letters = ['A','B','C','D','E','F','G']
if 'A' in letters:
print('A'+' exists')
if 'h' not in letters:
print('h'+' not exists')
- 数据类型与转换
int 整型
float 浮点型
bool 布尔型
a=1031
print(a,type(a))
##结果:1031 <class 'int'>
保留浮点后几位:
##保留浮点后几位
import decimal
from decimal import Decimal
decimal.getcontext().prec=3
a=Decimal(1)/Decimal(3)
print(a)
##bool型 0,0.0 ,0.00……是false ,其余都是true
print(type(0),bool(0),bool(0.0),bool(1))
#结果:<class 'int'> False False True
##bool作用在容器类型变量,包含‘’ () [] {}
#X是空变量为False,其余为True
print(type(''),bool(''),bool('python')
#结果:<class 'str'> False True
##获取类型信息 type(object)
print(type(1),type(5.2),type(True),type('5.2'))
#结果:<class 'int'> <class 'float'> <class 'bool'> <class 'str'>
转换类型:
print(int(87.56))
print(str(10+10))