• Python基础第四天


    python基础知识练习二:

    1、用下划线将列表的每一个元素拼接成字符串
    li =['alex','eric','rain',234]
    li[3] = str(li[3])
    v = '_'.join(li)
    print(v)
    2、查找列表中元素,移除每个元素的空格,并查找以a 或A 开头并且以c结尾的所有元素。
    li = ['alex',' aric',' Alex','Tony','rain']
    tu = ('alex',' aric','Alex','Tony',' rain')
    dic = {'k1':'alex','k2':' aric','k3':'Alex','k4':'Tony','k5':'rain'}
    for i in li:
         v1 = i.strip()
         if (v1.startswith('a')or v1.startswith('A')) and v1.endswith('c'):
             print(v1)
    
     for i in tu:
         v1 = i.strip()
         if (v1.startswith('a')or v1.startswith('A')) and v1.endswith('c'):
             print(v1)
    
     for i in dic.values():
         v1 = i.strip()
         if (v1.startswith('a')or v1.startswith('A')) and v1.endswith('c'):
             print(v1)

    3、写代码,有如下列表,按照要求实现每一个功能

    # 3a、计算列表长度并输出
    li =['alex','eric','rain']
    v = len(li)
    print(v)
    
    # b.列表中追加元素“seven”,并输出添加后的列表
    li.append('seven')
    print(li)
    
    # c.请在列表的第1个位置插入元素“Tony”,并输出添加后的列表
    li.insert(0,'Tony')
    print(li)
    
    # d.请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表
    li[1] = 'Kelly'
    print(li)
    
    # e.请删除列表中的元素“eric”,并输出修改后的列表
    li.remove('eric')
    print(li)
    
    # f.请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表
    v = li.pop(2)
    print(v)
    print(li)
    
    # g.请删除列表中的第3个元素,并输出删除元素后的列表
    del li[2]
    print(li)
    
    # h.请删除列表中的第2 至4 个元素,并输出删除元素后的列表
    del li[0:2]
    print(li)
    
    
    # i.请将列表所有的元素反转,并输出反转后的列表
    li.reverse()
    print(li)
    
    # j.请使用for、len、range 输出列表的索引
     for i in range(len(li)):
         print(i)
    
    # l.请使用for 循环输出列表的所有元素
    for i in li:
         print(i)

    4、写代码,有如下列表,请按照功能要求实现每一个功能

    li = ['hello','seven',['mon',['h','Kelly'],'all'],123,67]
    # 4a.请根据索引输出“Kelly”
    v = li[2][1][1]
    print(v)
    
    # 4b.请使用索引找到'all'元素并将其修改为“ALL”
    li[2][2]='ALL'
    print(li)

    5、写代码,有如下元组,按照要求实现每一个功能

    tu = ('alex','eric','rain')
    # a.计算元组长度并输出
    v = len(tu)
    print(v)
    
    # b.获取元组的第2个元素,并输出
    v = tu[1]
    print(v)
    
    # c.获取元组的第1-2个元素,并输出
    v = tu[0:2]
    print(v)
    
    # d.请使用for 输出元组的元素
    for i in tu:
         print(i)
    
    # e.请使用for、len、range 输出元组的索引
    for i in range(len(tu)):
         print(i)

    6、有如下变量,请实现要求的功能

    tu = ('alex',[11,22,{'k1':'v1','k2':['age','name'],'k3':(11,22,33)},44])
    # a.讲述元祖的特性
    # 一级元素不可被修改、删除、增加
    
    # b.'k2'变量对应的值是列表,可以被修改。,请在其中添加一个元素“Seven”
    v = tu[1][2]['k2'].append('Seven')
    print(tu)
    
    # c.'k3'变量对应的值是元祖,不可以被修改   可以转换成列表添加元素修改

    7、字典

    dic = {'k1':'v1','k2':'v2','k3':[11,22,33]}
    # 7a、请循环输出所有的key,value
    for k,v in dic.items():
         print(k,v)
    
    # d.请在字典中添加一个键值对,"k4":"v4",输出添加后的字典
    v = dic.setdefault('k4','v4')
    print(dic,v)
    
    # e.请在修改字典中“k1”对应的值为“alex”,输出修改后的字典
    dic['k1']='alex'
    print(dic)
    
    # f.请在k3 对应的值中追加一个元素44,输出修改后的字典
    dic['k3'].append(44)
    print(dic)
    
    # g.请在k3 对应的值的第1个位置插入个元素18,输出修改后的字典
    dic['k3'].insert(0,18)
    print(dic)

    8、转换

    # a.将字符串s="alex"转换成列表,元祖
    s="alex"
    l=list(s)
    t=tuple(s) print(l,t)
    
    # b.将列表li=["alex","seven"]转换成元组
    li = ["alex","seven"]
    tu = tuple(li)
    print(tu)
    
    # ***d.将列表li=["alex","seven"]转换成字典且字典的key按照10开始向后递增
    li = ["alex","seven"]
    dic = {}
    for i,name in enumerate(li,10):
         dic[i] = name
    print(dic)
    9、有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key 中,
    将小于66的值保存至第二个key 的值中。
    li = [11,22,33,44,55,66,77,88,99,90]
    v1 = []
    v2 = []
    for i in li:
         if i > 66:
             v1.append(i)      
         elif i < 66:
             v2.append(i)
    dic = {'key1':v1,'key2':v2}
    print(dic)
    10、输出商品列表,用户输入序号,显示用户选中的商品
    li = ["手机","电脑",'鼠标垫','游艇']
    # a.允许用户添加商品
    # b.用户输入序号显示内容
    dic = {}
    for i,num in enumerate(li,1):
          dic[i] = num
    print(dic)
    user = int(input('>>>'))
    print(li[user-1])
    12、列举布尔值是False 的所有值
    None “ ” () { } [ ] 0
    13、有两个列表
    l1=[11,22,33]
    l2=[22,33,44]
    # 13a.获取内容相同的元素列表
    v = []
    for i in l1:
         for j in l2:
             if i == j:
                 v.append(i)
    print(v)
    
    # b.获取l1中有,l2 中没有的元素列表
    for i in l1:
         if i not in l2:
             print(i)
    # d.获取l1和l2中内容都不同的元素
    for i in l1:
         if i not in l2:
             print(i)
    for j in l2:
         if j not in l1:
             print(j)
    14、利用For 循环和range 输出
    # a.For 循环从小到大输出1-100
    for i in range(1,101):
         print(i)
    
    # b.For 循环从大到小输出100-1
    for i in range(100,0,-1):
          print(i)
    
    # c.While 循环从小到大输出1-100
    i = 1
    while i < 101:
         print(i)
         i +=1
    
    # d.While 循环从大到小输出100-1
    i = 100
    while i > 0:
         print(i)
         i -=1
    15、购物车
    # 功能要求:
    # 要求用户输入总资产,例如:2000
    # 显示商品列表,让用户根据序号选择商品,加入购物车
    # 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
    money = int(input('总资产:'))
    goods = [{"name":"电脑","price":1999},{"name":"鼠标","price":10},{"name":"游艇","price":20},{"name":"美女","price":998}]
    for i,good in enumerate(goods,1):
         print(i,good)
    user = int(input('请输入商品号:'))
    if int(goods[user-1]['price']) >= money:
         print('余额不足')
    else:
         print('购买成功')
    16、分页显示内容
    # a.通过for 循环创建301 条数据,数据类型不限,
    # b.提示用户请输入要查看的页码,当用户输入指定页码,则显示指定数据
    user_list = []
    for i in range(1,302):
         temp = {'name':'alex'+str(i),'email':'alex@live.com' +str(i),'pwd':'pwd'+str(i)}
         user_list.append(temp)
    # #每页显示10 条数
    while True:
         s = input('请输入页码:')
         s = int(s)
         start = (s-1) * 10
         end = s * 10
         result  = user_list[start: end]
         for item in result:
             print(item,type(item))
    17、有1、2、3、4、5、6、7、8、8 个数字,能组成多少个互不相同且无重复数字的两位数?
    for i in range(1,9):
         for j in range(1,9):
             if i != j:
                 print(int(i*10+j))
    18、利用for 循环和range 输出9*9乘法表
    for i in range(1,10):
         for j in range(1,i+1):
             print('{0} * {1} = {2}'.format(i,j,i*j),end = "  " )#end = " " 作用就是:内循环不换行
         print('
    ',end = " " )
    19、有一下列表,nums=[2,7,11,15,1,8,7] 请找到列表中任意两个元素相加能够等于9 的元素集合
    nums = [2, 7, 11, 15, 1, 8, 7]
    li = []
    for i in nums:
         for j in nums:
             if i + j == 9:
                 li.append((i,j))
    print(li)
    li = []
    for i in range(len(nums)):
         for j in range(len(nums)):
             if nums[i] + nums[j] ==9:
                 li.append((i,j),)
    print(li)
    20.公鸡5 文钱一只,母鸡3 文钱一只,小鸡3 只一文钱,用100 文钱买100 只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母
    鸡,小鸡要买多少只刚好凑足100 文钱?
    for x in range(1,20) :
         for y in range(1,33) :
             for z in range (1,100) :
                 if x + y +z ==100 and 5*x + 3*y + z/3 ==100:
                     print(x,y,z)
  • 相关阅读:
    angular安装指定版本
    Fluttter通过按钮来打开抽屉Drawer或者endDrawer
    angular中的animation动画
    flutter pubspec.yaml配置文件详解
    angular-cli卸载安装
    angular的项目基本配置的了解
    angular使用代理解决跨域
    IOS开发之UI布局
    用Objective-C写了一个简单的批量更改文件名的程序
    使用Objective-C 计算代码运行时间
  • 原文地址:https://www.cnblogs.com/xyd134/p/6415772.html
Copyright © 2020-2023  润新知