1.while循环
# # 实现while循环实现0-100相加
# sum = 0
# i = 1
# while i <= 100:
# # sum = sum + i
# sum += i
# i += 1
# print(sum)
#
# '''
# 第一次循环 i = 1 ,sum = 0, -->sum = sum + i = 0 + 1 = 1 ,sum = 1 i = 2
# 第二次循环 sum = 1 ,i = 2, -->sum = sum + i = 1 + 2 = 3 ,sum = 3 i = 3
# 第三次循环 sum = 3 , i = 3, -->sum = sum + i = 3 + 3 = 6 ,sum = 6 i = 4
# ......
# 第九十九次循环 sum = 4851, i = 99 -->sum = sum + i = 4051 + 99 = 1 ,sum = 4950 i = 100
# 第100 sum =4950 , i = 100 -->sum = sum + i = 4950 + 100 = 5050 ,sum = 4950 i = 101
# 第101次循环 不满足条件结束循环
# '''
# '''
# 1.将0-100 所有3的倍数相加
# 2.0-100 含有3 的相加
# 3.46 37 4
# 使用基数排序思想给上面进行排序从大到小 打印
# '''
# sum = 0
# i = 1
# while i <= 100:
# # sum = sum + i
# if i % 3 == 0:
# sum += i
# i += 1
# print("三的倍数加和", sum)
#
# print("=========================")
# i = 0
# sum1 = 0
# while i <= 100:
# if (i % 3 == 0) or (i % 10 == 3) or (i // 10 == 3):
# print(i)
# sum1 += i
# i += 1
# print(sum1)
# print('========================')
a = 46
b = 37
c = 42
lst1 = [a, b, c]
lst1.sort()
lst2 = [b, a, c]
lst2.sort()
lst3 = [b, c, a]
lst3.sort()
print(lst1, lst2, lst3)
print('====================')
a = 46
b = 37
c = 42
d = 39
x_value = a
if x_value < b:
x_value = b
if x_value < c:
x_value = c
if x_value < d:
x_value = d
print(x_value)
print('=========')
x_value = a
if x_value > b:
x_value = b
if x_value > c:
x_value = c
if x_value > d:
x_value = d
print(x_value)
2.break 终止循环
# 吃四个苹果
i = 1
while i <= 4:
print(f"吃第{i}个苹果")
i += 1
print("=====================")
# 吃四个苹果 吃到三个饱了 不吃第四个
3.continue
i = 1
while i <= 4:
print(f"吃第{i}个苹果")
if i == 3:
print("我吃饱了")
# 终止使用循环 跳出循环
break
i += 1
print("==================")
# 第三次循环 吃到带有虫子的苹果 跳出循环
i = 0
while i < 4:
i += 1
if i == 3:
print("这个苹果有虫子,给刘鸡鸡吃")
continue
print(f"吃第{i}个苹果")
# break和continue区别 ,break是终止使用循环,continue是跳出本次循环
4.for循环
# 循环带有python的每个单词
# 012345
str1 = "python"
print(str1[3])
# i 是临时变量,用来取职
for i in str1:
print(i)
print("===============")
'''
1.while循环取出y和o,打印出来
'''
j = 0
while j < 6:
if j == 1 or j == 4:
print(str1[j])
j += 1
print("==========================")
# 使用for循环 打印James 跳过m 打印后面的内容
for i in "james":
if i == "m":
continue
print(i, end=' ')
5.range的用法
# i = 1
# while i <= 5:
# print(i)
# i += 1
print("=================")
for i in range(1, 6):
print("*" * i)
print("===============")
for i in range(1, 6):
if i % 2 == 1:
print("*" * i)
6.字符串操作
# 定义一个字符串 字符串使用双引号或者单引号定义
a = "Hello Python"
b = "abcdef"
print(type(a))
print(type(b))
name1 = '秦晓添'
name2 = "刘鸡鸡"
name3 = '''廖警官'''
name4 = """胡航"""
name5 = '''
汤佳亮'''
print(type(name1))
print(type(name2))
print(type(name3))
print(type(name4))
print(type(name5))
print(f"你的名字是{name2}")
print("============================")
# 01234 字符串下标或者叫索引
name = "simon"
print(name[0]) # 取s
print(name[2]) # 取m
print(name[4]) # 取n
print("==============================")
# 切片 0123456
# -2-1
name6 = "abcdefg"
# 第一个数字是开始位置(包含)
# 第二个位置上的是结束位置(不包含)
# 要前不要后
print(name6[2:5])
print(name6[2:5:1]) # 跟上面一样 第三个参数是步长 默认是1
print(name6[:5]) # 第一个参数不写 默认是0
print(name6[4:]) # 第二个参数不写 默认取到后
print(name6[:]) # 第一个和第二个不写 表示取使用
print(name6[::2]) # 步长是2 表示跳着取 0246位置上的值
print(name6[-1]) #
print(name6[:-1]) # 从开始取到最后一个 但是最后一个值不要
print(name6[-4:-2]) # 把倒数第四和倒数第二取出来
print(name6[::-1]) # 把字符串倒过来
print("====================")
# 字符串查找 find
# 012345678910
mystr = "hello world"
# 查找hello 查找到了返回 子串在原本字符串的起始位置
result1 = mystr.find("hello")
print(result1)
result2 = mystr.find("world")
print(result2)
# 在字符串中查找一个不存在的值 查找失败 返回-1
result3 = mystr.find("python")
print(result3)
# 第二个参数 和 第三个参数表示是 在哪一个区间内查找
result4 = mystr.find("lo", 6, 10) # 在位置6-10 查找不到lo
print(result4)
result5 = mystr.find("lo", 2, 6) # 在位置6-10 查找到lo
print(result5)
print("=====================")
# 字符串查找index
# 012345678910
mystr1 = "hello world"
# 查找到第一个字符的位置下标
ret1 = mystr1.index("hello")
print(ret1)
ret2 = mystr1.index("world")
print(ret2)
# ValueError: substring not found
# 表示没有找到 则报错 报错会导致程序结束
# ret3 = mystr1.index("python")
# print(ret3)
# ret4 = mystr1.index("lo", 4, 8)
# print(ret4)
ret5 = mystr1.index("lo", 1, 8)
print(ret5)
7.字符串操作2
# 统计字符串次数
com_apply = "This class is very good, so good ,people good so amazing"
# 计算good在字符串的次数
result1 = com_apply.count("good")
print(result1)
# 24,50是指定范围内 查找good的次数
result2 = com_apply.count("good", 24, 50)
print(result2)
print("=====================")
# 修改字符串replace
com_apply = "This class is very good, so good ,people good so amazing"
# 没有第三个参数的情况下 将所有的good替换为bad 生成一个新的字符串 原来的字符串没有变化
# 有第三个参数的情况下 第三个参数是替换的次数
result3 = com_apply.replace("good", "bad")
print(result3)
print(com_apply)










