python自动化--语言基础二运算符、格式化输出、条件语句、循环语句、列表操作
运算符包括:算术运算符、比较运算符、赋值运算符、逻辑运算符、成员运算符、身份运算符。
算术运算符
% 取模(余数)
// 取相除的整数部分
/ (5/2=2.5)
比较运算符
== 等于
!= 不等于
< 小于
> 大于
<= 小于等于
>= 大于等于
1 if a==b: 2 print(1) 3 else: 4 print(2)
赋值运算符
a+=b 等于 a=a+b
a-=b a=a-b
a*=b a=a*b
a/=b a=a/b
a%=b a=a%b
a**=b a=a**b
a//=b a=a//b
逻辑运算符
逻辑运算执行顺序:not > and > or
非0和非空(null)值为true,0或者null为false
1 a = 0 2 b = 10 3 if not(a and b): #有里往外看循环 4 print(1) 5 else: 6 print(2)
成员运算符
in not in
1 a = 1 2 b = 20 3 c = [1,2,3,4,5] 4 if a in c: 5 print("a在c列表中") 6 else: 7 print("a在c列表中") 8 9 if b not in c: 10 print("b不在c列表中") 11 else: 12 print("b在c列表中")
身份运算符
== 判断变量的值是否相等
is 判断某个变量身后的id是否一样
1 if a is b: 2 print("a和b的id一样") 3 else: 4 print("a和b的id不一样") 5 print(id(a)) 6 print(id(b))
格式化输出
abc = 1
print("abc = %.2f"%(abc*3)) #a = 3.00
print("xiaoxiao\n")
print("我的名字是%s,今年%d"%('小小',27))
print("我的名字是{},今年{}".format('haha',27))
namelist = ["hankai","shoushou"]
print("we name:{},{}".format(*namelist)) #列表解包后取值
namedict = {"name":"hankai","age":32}
print("我的名字是:{name},今年:{age}周岁".format(**namedict)) #字典解包后取值
name = "hankai"
age = 32
print(f"我的名字是{name},今年{age}")
条件语句
1 flag = False 2 name = "xiao" 3 if name == "qia": 4 flag = True 5 print("欢迎来到我的世界,黑夫千年后的爱恋") 6 else: 7 print(name)
1 num = 9 2 if num>=0 and num <=10: 3 print("very well")
循环语句
循环语句:while,for,嵌套
循环控制语句:break跳出并终止循环,continue跳出本次循环执行下一次循环
while语句
1 count = 0 2 while count<9: 3 print("count=",count) 4 count+=1 5 print("while循环结束")
break及continue语句
1 i = 1 2 while i<10: 3 i+=1 4 if i%2 > 0: 5 continue 6 print(i) 7 print("==============================") 8 i = 1 9 while True: 10 print(i) 11 i+=1 12 if i>10: 13 break
if ... else... 和 while ... else ... 是一样的。
for语句
1 for index in range(0,3): #等同于range(3) 2 print(index) #打印0,1,2
1 index = 0 2 starnames = ['今年','明年','后年'] 3 for index in range(len(starnames)): 4 print(starnames[index])
range(5) #01234
range(1,5,2) #13
range(1,5) #1234
列表操作
1、list列表练习
1 LI = ["快乐大本营",2016,"我是歌手"] 2 print(LI[1]) 3 LI.append("非诚勿扰") 4 print(LI) 5 LI.extend("男生女生") 6 print(LI) 7 LIS=[1,2,3] 8 LI.extend(LIS) 9 print(LI) 10 11 LI.insert(1,2017) #插入的下标位置和具体的值 12 LI.insert(-1,2017) #实际上是插入在倒数第二位13 14 LI.pop(1) #删除下标是1的元素 15 16 LI.remove(2016) #移除元素2016 17 print(LI) 18 19 print(LI.index("快乐大本营")) #获取下标 20 print(LI.count("生")) #统计出现的次数
1 正向和反向排序 2 list_sort = [2,3,1,4] 3 4 list_sort.sort() #sort方法是重新排序列表不生成新的列表 5 print(list_sort) 6 7 list_sorted = sorted(list_sort) #sorted排序列表并生成新的列表 8 print(list_sorted) 9 10 11 list_sort.reverse() #倒排 12 print(list_sort)
2、列表中append与extend区别
- append只增加一个元素,把其后的元素当做一个元素追加在列表中
- extend会在列表中追加多个元素【多个元素,如果是列表,将元素挨个取出后追加,如果是字符串,将每个字符挨个取出后追加】
li = ["快乐大本营",2016,"我是歌手"]
li.extend("123")
print(li) # ['快乐大本营', 2016, '我是歌手', '1', '2', '3']
numbers=[1,2,3,4]
numbers.append([5,6,7,8])
print((numbers)) # [1, 2, 3, 4, [5, 6, 7, 8]]
如果两个列表相加是放在一个列表中,每个元素还是每个单独的元素。
list = ['abcd',123,2.23,678,"xiao"]
tinylist = [123,"xiao"]
print(list+tinylist) # ['abcd', 123, 2.23, 678, 'xiao', 123, 'xiao'] #同extend用法