智能体测开Day15python

发布时间:2026/7/23 21:06:42
智能体测开Day15python for循环# for循环 range(start,end,step) 生成一些有规律的整数 start:开始值默认为0 end:结束值 范围[start,end) step:跨步默认为1 range(1,10,2) 1 3 5 7 9 可以省略开始值和跨步 a range(3,20,3) print(type(a)) print(list(a)) print(set(range(20,4,2))) # 空元组 print(list(range(20,4,-2))) #[20, 18, 16, 14, 12, 10, 8, 6] print(list(range(10,30))) #如果传入两个值默认跨步为1 print(list(range(10))) # 省略了开始值和跨步 # 打印1-100的数值 # for i in range(1,101): # print(i) # 打印1234...100的和 sum 0 sum sum1 到1的和 sum sum2 到2的和 sum sum3 到3的和 。。。。。 sum sum100 到100的和 sum 0 for j in range(1,101): # sum sumj sum j print(sum) # 打印1*2*3....*100的和 # 打印1...100的以内的3的倍数和 sum 0 for j in range(1,101): if j%30: sum j print(sum) # 遍历1000~3000之间的数字将既能被7整除又能被5整除的数字打印下来。 flag 1 # 用来判断是不是第一次 for k in range(1000,3001): if k%70 and k%50: if flag 1: # 第一次进入分支 print(k,end) # 改变flag的值 flag2 else: # 其他次 print(,,k,end,sep) print() # 判断一个数是不是质数 # 5 5/(2 3 4) 7 (23456) num 5 flag True # 是否是质数的标记 for i in range(2,num): # 判断num模于i是不是0 if num%i 0: # 不是质数 flagFalse # 退出循环 break if flag: print(是质数) else: print(不是质数)while循环# while循环 break:退出当前整个循环 continue:退出本次循环继续下一次的循环 break和continue一旦执行下面的代码不再执行 for:一般是用在循环次数确定 while:循环次数不确定时首选 while 条件: 循环内容 1容易造成死循环 2一般需要在while循环中进行改变循环条件的设置 for i in abc: for j in *(: print(fi{i},j{j}) if i b: break # 输入数字如果数字不是1继续输入如果数字是1不再输入 while True: num input(输入数字) if num 1: print(数字正确退出) break num input(输入数字) while num ! 1: print(f输入的数字为{num}) num input(继续输入数字) #练习求1~10之间的所有3的倍数和 sum 0 # for i in range(1,11): # if i%30: # sumi for i in range(1,11): if i%3!0: continue# 继续下一次循环下面的内容不再执行 sumi print(sum)列表# 列表 1)有序的可重复的 2列表中的元素可以是任意类型可以是不同的数据类型 3是可变的可以修改列表中的元素 3通过下标或索引访问元素 4下标是正整数代表从前往后访问下标从0开始 下标是负整数代表从后往前访问下标从-1开始 a [5,4,6,abc,67] print(a[-1]) a aksdgkdf al list(a) print(al[-2]) print(type(al))# class list bl [5,6,7,abc,(a,b,c),[d,5]] print(bl[4][1]) print(bl[5][1]) print(type(bl[4])) # 增 bl.append(def) # 追加元素 bl.append(zhangzei) print(bl) # 插入元素 bl.insert(2,tom) bl.insert(3,messi) print(bl) # 合并 cl [6,7,8] bl.extend(cl) print(bl) dl bl cl print(dl) # 删除 del bl[1] del bl[0] print(bl) b bl.pop(4) # 删除并获取删除的数据 c bl.pop(0) print(b) print(c) print(bl) # 移除某个元素 bl.remove(7) #7是元素,表里第一个等于7的 print(bl) # 清空 # bl.clear() print(bl) # 创建一个空列表 kong [] kong list() # 改 bl[2]999 print(bl) dl [tom,lucy,lily,张三,jack] dl.reverse() # 反转 print(dl) # 排序方式1 使用列表的sort方法实现升序 dl.sort() print(dl) # 降序 dl.sort(reverseFalse) print(dl) dl.sort(reverseTrue) print(dl) # 方式2排序使用python内置方法sorted() dl [tom,lucy,lily,张三,jack] dl1 sorted(dl) print(dl) # 源列表元素不变 print(dl1)# 新列表中是排序后的 print(-*100) print(dl) # 查 # print(dl[9]) 下标越界异常 # 获取列表长度 print(len(dl)) print(dl[len(dl)-1]) # 获取元素的下标 print(dl.index(lucy)) # print(dl.index(lucy1)) 如果没有改元素则报错 # 判断是否含有改元素 print(lucy1 in dl) print(lucy1 in dl) dl [3,4,4,5,5,6,4,2,3,4] print(dl.count(5)) # 获取某个元素的个数 # 拷贝 列表的拷贝分为深拷贝和浅拷贝 如果列表中没有子列表深拷贝和浅拷贝没有区别 浅拷贝copy() 拷贝源列表但是子列表不拷贝,源列表和拷贝后的列表的子列表是同一个一个发生了变化另一个也会变化 深拷贝deepcopy() 拷贝源列表子列表也拷贝 list1 [4,5,6,8,[tom,lucy]] import copy # 将python的内置库导入导入后就可以使用copy库中的方法 list2 copy.copy(list1) list1[4].append(lily) print(f源列表 {list1}) print(f拷贝后的列表{list2}) list3 [4,5,6,8,[tom,lucy]] list4 copy.deepcopy(list3) list3[4].append(lily) print(f源列表 {list3}) print(f拷贝后的列表{list4}) # 切片 目的通过设置一定的下标范围获取列表的一些元素 格式: 列表[start:end:step] 说明1start开始值默认为0 2end结束值默认为长度 3范围[start,end) 4)step:跨步 默认为1 5切片可以用于列表元组字符串 6del 可以根据切片删除多个元素 7可以省略使用默认值但是冒号不能省 l [4,5,6,7,8,9,10,11] print(l[2:5:1]) print(l[2:7:2]) print(l[:7:2]) # 0 2 4 6 print(l[4::1]) # print(l[::-1]) # 反转列表 print(l[6:2:-1]) # 6,5,4,3 print(--------------) del l[2:5:1] print(l) aabcdefg print(a[3::]) # 遍历 for i in l:#i代表元素 print(i) print(-----------------) for j in range(0,len(l),1):# j代表下标 print(l[j]) print(-----------------) for k in range(len(l)-1,-1,-1): print(l[k]) print(-----------------) # 获取列表中的元素tom的下标 names [tom,l,m,tom,6,tom] l [] for index in range(0,len(names)): if names[index]tom: l.append(index) print(l)