字符串格式化
1、+
2、print("",变量名)
3、print("%d,%d"%(变量名1,变量名))
4、print("{}+{}={}".format(变量1,……))
5、print(f"mcks{变量名}")
运算符
1、算术运算符: + - * / // %
2、关系运算符(比较) ==
3、逻辑运算符 and or not
4、所属 :in not in
5、is 内存地址是否相同
6、赋值运算符 =
a = 1
a += 4 a = a + 4
python中没有自增自减
()提高优先级
字符串对象: dir()
位运算
基于二进制的运算 ---计算机最小单位:位bit
计算机的底层基于位运算的
&
|
^ 异或
~ 按位取反
>>
<<
字节1byte = 8bit
10+11
0000 1010
0000 1011
---------------
0001 0101
正数相加的问题,负数
8位的首位作为符号位 1代表负数 0代表正数
-3+2
1000 0011
0000 0010
-------------
1000 0101 -5(出大事了)
为了解决负数运算问题------原码、反码、补码三个概念
原码 数值的标准的二进制位
反码 符号位不变,其余位取反
补码 反码+1 原码 反码 补码
-3 1000 0011 1111 1100 1111 1101
2 0000 0010
------------------------------------------
1000 0001 1111 1110 1111 1111---
正数不存在反码、补码,计算机底层的运算是基于补码
-3+4
-3 1000 0011 1111 1100 1111 1101
4 0000 0100
------------------------------------------
0000 0001
位运算:
&:两真则真,一假则假
8&9: 0000 1000
& 0000 1001
---------------
0000 1000
|:两假为假,一真则真
8|9:
0000 1000
0000 1001 |
---------------
0000 1001
^:相反为真,相同为假
8^9:
0000 1000
0000 1001 ^
---------------
0000 0001
~:按位取反 包含符号位
~2:0000 0010 ---->1111 1101(补码-1)---->1111 1100(反码符号位不变,其余为按位取反)--->1000 0011(原码)
>>
8>>2: 0000 1000
0000 0010 2 右移:除以2的n次方(右移的位)
<<
8<<2: 0000 1000 左移:乘以2的n次方
0010 0000
三元运算符
条件成立时的代码 if 判断 else 条件不成立时的代码
程序结构:
顺序结构
选择结构
循环结构
选择结构:
if关键字
最简单的if语句:
if 表达式 :
代码1
else:
代码2
if……elif……else
if age >18:
print("good")
elif 30 > age >18:
print("1")
else:
print("2")
if嵌套
if:
if:
if:
else:
else:
else:
索引:正向索引:下标从0开始
负数索引,下标从-1开始
字符串的切片
sname[start:end:step] [ )
sname:要操作的序列名称
start:表示切片的开始位置(包含自身),如果不去指定的话,默认从0开始。
end:表示切片的结束位置(不包含自身),如果不指定的话,默认是序列的长度
step:表示切片的步长,如果省略,默认为1
s[:] 切片切的是整个字符串
nanhang:步长为2,nnag 0 1 2 3 4 5 6
s[::-1]:字符串反转
列表:list [ 元素1,元素2 ,元素3 ,元素4 ,……]
列表里边的元素数据类型可以不相同,列表可以相互嵌套
print(list[1][1])
列表中的列表的索引下标 列表中的列表的数据的索引下标
列表的加法和乘法
list_1 = [1,2,3]
list_2 = [4,5,6]
list_3 = list_1 + list_2
print(list_3)
结果[1,2,3,4,5,6]
list_4 = list_3*2
print(list_4)
结果[4,5,6,4,5,6]
列表操作的常用方法
dev(list)
append():尾部追加元素
insert():指定位置插入元素list.insert(1,list2)
sort():排序--默认升序---只用于整型
list.sort(reverse=True)降序
index():查看列表元素下标,若列表中没有该元素则会报错
reverse():将列表中元素顺序翻转
remove():移除元素在列表中的个数
count():统计元素在列表中的个数
clear():清除元素
copy():复制ls1 = ls.copy()
extend():合并列表ls1.extend(ls2)
pop():删除最后一个元素
del():删除 del(ls1[2])