已知一个数字A,然后在1-100内找出I+J等于A .
自己初步编辑程序:
错误一:明显看到if i==i,j==j 是不对的,一个数永远都等于自己。
107 108 109注释,先运行一下
小知识点:
波浪线可以鼠标放上去看看错误提示
红色(代表错误,必须修改),黄色(警告,不修改也可以但是最好还是修改掉)
打印的10次PASS,并不是想到的预期
下面添加嵌套
嵌套我记得
数值=10*i+j
问题来了,左边写什么?
c=10*i+j
print(f"c = {c}")
那么c又代表什么意思呢?
c就是一个变量,记录一下10*i+j=几
然后打印出来
然后就扔掉
c就是这样一个东西,目的就是让你知道10*i+j的值
没有其他意义
有嵌套了,但是出现的结果并不符合预期,不是连续的数字
c放到103行,103行是谁的语句块,它是102行if的语句块
继续修改,发现总于出现连续的语句了,而c却是从11开始的。
For i in range(0,10), 结果如下总于是连续的数字了。
行下一步弄一个列表吧
list = []
for k in range(0,10)
list.append(k*2+1)#z这种添加奇数到列表的方式
print(list)
显示104行,超出范围。
检查原因:
原因是,j的值最大到10,但是list只有10个元素(中括号里面最大到9,记得是从0开始数)
后面的 i j 都受到list范围的影响,要和List范围保持一致
这样就得到c的数值
继续修改:
106行应该在循环里面,107行print(“pass”)
别的出现结果的时候都是print , pass 为什么不需要呢?
在 Python 中,pass 是一个空操作语句,它不执行任何操作,仅用作占位符,表示“这里什么也不做”。
因为pass不需要输出
在 Python 中,pass 语句本身不会影响同一代码块(如 if、for、def 等)中的后续语句执行。如果 pass 后面还有语句,它们会正常执行。
示例分析
1. pass 后面有其他语句
Python
复制
下载
if True:
pass
print("这行会执行!") # 正常执行
输出:
text
复制
下载
这行会执行!
pass 只是占位符,不执行任何操作,但不会阻止后续代码运行。
2. pass 在循环或函数中
python
复制
下载
def my_func():
pass # 空操作
return 42 # 仍然会执行
print(my_func()) # 输出 42
输出:
text
复制
下载
42
即使 pass 出现在函数开头,也不会影响 return 语句的执行。
3. pass 在 try-except 块中
python
复制
下载
try:
pass # 什么都不做
print("try 块继续执行") # 仍然执行
except:
print("不会执行这里")
print("程序继续")
输出:
text
复制
下载
try 块继续执行
程序继续
pass 不会中断 try 块的执行流程。
关键结论
pass 仅表示“什么都不做”,不会影响同一代码块中的后续代码。
如果 pass 后面有语句,Python 会继续正常执行它们。
如果 pass 是代码块的最后一行,则相当于“空块”,不会产生任何效果。
对比 pass 和 continue/break
pass:空操作,继续执行后续代码。
continue(循环中):跳过本次循环剩余代码,进入下一次迭代。
break(循环中):直接退出整个循环。
总结
pass 不会阻止后续代码执行,它只是一个占位符,确保语法正确。如果你的本意是“跳过剩余代码”,应该用 continue(循环)或 return(函数),而不是 pass。
初学者的一大难题是:
如何缩进,缩进多少呢?
先把104行对齐对齐好,104行应该是有4个空格,你只敲了一个空格
103行也不对,103行要按shift加tab
也就是103行,现在是多了4个空格啊,你要把这多的4个空格去掉
104105行都退4个空格
所以才叫嵌套循环啊,红线是4个缩进,绿线是8个缩进
如果a=33,结果是没有的
list里面全部都是奇数对不对
奇数+奇数=偶数
a=33是奇数不是偶数,当然就找不到
如果a=34,就出现结果c=34
List.append(k*2+1)
就是添加,只不过这里append在一个循环里面
所以它才会添加多次,看起来就像添加了一整个列表,
实际上是把列表的每一个元素都执行了一次append
现在需要知道具体的数值
print(f"{c} = {list[i]} + {list[j]},i = {i}, j={j}")
现在显示就是具体的数字,到目前为止,已知一个数字A,然后在1-100内找出I+J等于A .这个问题就解决了。
关注我,分享更多干货!