zoukankan      html  css  js  c++  java
  • 练习题目 :if for while else range、xrange、zip

    range在内存中直接生成指定的序列,当序列非常大时会浪费内存资源;

    xrange则不会直接生成一个list,而是每次调用返回其中的一个值,而非直接全部生成存于内存中 

    range([start,] stop[, step])

    if练习:

    #练习1:逐一显示指定列表中的所有元素:
    a = ['first', 'second', 'third', 'forth', 'fifth']
    count = 0
    while count < len(a):
    print(a[count])
    count += 1

    print('这是逆序显示'.center(30, '#'))
    while a:
    print(a[-1])
    a.pop()

    对于任何可迭代对象,使用for是最简单的,效率高于while

    #练习2:求100内奇数和,偶数和:
    a = 0
    sum = 0
    sum1 = 0
    while a <= 100:
    if a % 2 != 0:
    sum += a
    else:
    sum1 += a
    a += 1

    print('偶数和:%d , 奇数和:%d' % (sum,sum1))
    #偶数和:2500 , 奇数和:2550



    # 练习3:逐一显示指定列表的所有键,并于显示结束后说明总键数
    a = []
    dic = {'x': 1, 'b': 2, 'c': 3, 'd': 4}
    keylist = dic.keys()
    for i in keylist:
    a.append(i)

    while a:
    print(a[0])
    a.pop(0)
    else:
    print('总键数:%d'.center(50, '-') % (len(dic)))



    #练习4:创建一个包含了100以内所有奇数的列表,并逆序显示列表中的所有元素:
    a = 0
    l = []
    while a < 100:
    if a % 2 != 0:
    l.append(a)
    a += 1
    else:
    print('正序:', l)
    l.reverse()
    m = l
    print('逆序:', l)
    #逆序用到列表的reverse方法


    #练习5:列表l = [0,1,2,3,4,5,6] m = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],
    #以第一个列表中的元素为键,以第二个列表中的元素为值生成字典L

    l = [0, 1, 2, 3, 4, 5, 6]
    m = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
    L = {}
    count = 0
    if len(l) == len(m):
    while count < len(l):
    L[l[count]] = m[count]
    count += 1
    else:
    print(L)

    #涉及到字典中新增键值的方法==》给键直接赋值即可
    ##字典的构造:zip,取一个或多个序列为参数,将给定序列中的并排的元素配成元组,返回这些元组的列表(当参数长度不通时,zip以最短序列的长度为准)
    #可在for循环中用于实现并行迭代
    # L = [0, 1, 2, 3, 4, 5, 6]
    # m = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
    # n = {}
    # for (k,v) in zip(L,m):
    # n[k] = v
    # print(n)
    #输出:{0: 'Sun', 1: 'Mon', 2: 'Tue', 3: 'Wed', 4: 'Thu', 5: 'Fri', 6: 'Sat'}








    for循环练习
    练习1:逐一分开显示指定字典d1中的所有元素,类似如下:
    k1 v1
    k2 v2
    ...
    d1 = {0: 'Sun', 1: 'Mon', 2: 'Tue', 3: 'Wed', 4: 'Thu', 5: 'Fri', 6: 'Sat'}
    # d1 = {'0': 'Sun', '1': 'Mon', '2': 'Tue', '3': 'Wed', '4': 'Thu', '5': 'Fri', '6': 'Sat'}
    for (k, v) in d1.items():
    print(k, v)



    练习2:逐一显示列表中l1=["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]中的索引为奇数的元素
    l1 = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
    法1:
    for i in l1:
    if l1.index(i) % 2 != 0:
    print(l1[l1.index(i)])
    法2:
    for i in range(1,len(l1),2): #非完全遍历用range
    print(l1[i])


    练习3:将属于列表l1=["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
    但不属于列表l2=["Sun", "Tue", "Wed", "Fri"]的所有元素定义为一个新列表l3
    l1 = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
    l2 = ["Sun", "Tue", "Wed", "Fri"]
    l3 = []
    for i in l1:
    if i not in l2:
    l3.append(i)
    print(l3)

    练习4:已知列表namelist=['stu1', 'stu2', 'stu3', 'stu4', 'stu5', 'stu6', 'stu7'],
    删除列表removelist=['stu3', 'stu7', 'stu9']:从namelist中移除removelist,不在removelist中的忽略
    namelist = ['stu1', 'stu2', 'stu3', 'stu4', 'stu5', 'stu6', 'stu7']
    removelist = ['stu3', 'stu7', 'stu9']
    for i in removelist:
    if i in namelist:
    namelist.remove(i)
    print(namelist)
  • 相关阅读:
    JAVA程序操作hbase的Maven配置pom.xml文件
    windows下部署icescrum
    第一次博客作业——简单介绍一下自己
    2019寒假训练营第三次作业
    网络空间安全概论第5单元笔记
    2019寒假训练营第二次作业
    网络空间安全概论1、4单元笔记
    2019寒假训练营第一次作业
    软工实践个人总结
    第4次作业-结对编程之实验室程序实现
  • 原文地址:https://www.cnblogs.com/yum777/p/6642605.html
Copyright © 2011-2022 走看看