如何从循环中的if条件返回值并在循环python的第一个中使用它

问题描述 投票:0回答:3

我有一个for循环来创建付款号码,如040-050,这里是代码

start_num = 40
end_num = 50
for painum in range(start_num, end_num):
    painumreturn = ""
    if not painumreturn:
      painumbe = painum
    else:
     painumbe = painumreturn
     painumreturn =''
    painumber = str(painumbe).zfill(3)
    if '044' in painumber:
      painumreturn = painumber
    print (painumber)

#output

    040
    041
    042
    043
    044 # this is the condition when it reach it 
       #it will set painumreturn value to the current number 
       #then do the loop from this value and continue to the end
    045
    046
    047
    048
    049

条件成立后开始时

044
045
046
047
048
049

这个想法是我如何从if条件中恢复痛苦并从中开始数字

python python-3.x
3个回答
0
投票

您的意思是这样的吗?

# intialize varibales:
start = 40
end = 50

# iterate over given range:
for number in range(start, end):

    # skip values less than 44:
    if number < 44:
        continue

    # use zfill to format number:
    formatted_number = str(number)
    formatted_number = formatted_number.zfill(3)

    # print result:
    print(formatted_number)

输出:

044
045
046
047
048
049

0
投票

跳过条件满足的所有项目:

start_num = 40
end_num = 50

for painum in range(start_num, end_num):
    if painum < 44:
        continue

    print(f"{painum:03.0f}")

0
投票

如果您乐意将结果存储为列表,则可以使用列表理解功能在一行中完成任务。

numbers = ["0" + str(num) for num in range(start_num, end_num) if num >= 44]

#['044', '045', '046', '047', '048', '049']
© www.soinside.com 2019 - 2024. All rights reserved.