for循环嵌套详细解析及循环案例

需要知道的是,两个for循环嵌套的时候,都是里面的for循环结束以后才会开始外面一层for循环

情况一:

a = ['a','b']

b = ['1','2']


c = []              #因为c在所有循环外面,所以每次循环到append的时候都会把添加元素

for i in a:

   print(i)

   for n in b:

       c.append(n)

   print(c)

#打印结果

a

['1', '2']

b

['1', '2', '1', '2']

情况二:

a = ['a','b']

b = ['1','2']

for i in a:

   print(i)

   c = []          #因为c在第一个for循环里面,所以外面的for循环进行第二次循环的时候就会给c                    重新赋值空列表

   for n in b:

       c.append(n)

   print(c)

#打印结果

a

['1', '2']

b

['1', '2']

情况二的补充:

a = ['a','b']b = ['1','2']for i in a:    print(i)    c = []    print(c)    for n in b:        c.append(n)    print(c)#打印结果,从结果可以明显看出c会被重新赋值为空列表a[]['1', '2']b[]['1', '2']

补充:

#列表可以拼接为字符串a = ["我","是","神仙"]q = "".join(a)#打印结果:我是神仙

案例

# 要求:

# 1:页面显示 序号 + 商品名称 + 商品价格,如:

#       1 电脑 1999

#       2 鼠标 10

# 2:用户输入选择的商品序号,然后打印商品名称及商品价格

# 3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。

# 4:用户输入Q或者q,退出程序。

goods = [

   {"name": "电脑", "price": 1999},

   {"name": "鼠标", "price": 10},

   {"name": "游艇", "price": 20},

   {"name": "美女", "price": 998}

]

for index in range(len(goods)):

   a = goods[index]

   # print(type(index))    #索引位置是整型

   d = "{} {} {}".format(index+1, a["name"], a["price"])

   print(d)


while True:

   n = input("请输入商品序号:")

   if n.upper() == "Q":

       break

   if n.isdecimal():

       n = int(n)

       if 0 < n < 5:

           nm = n - 1

           cg = goods[nm]

           print(cg["name"], cg["price"])

       else:

           print("商品号错误")

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容