zoukankan      html  css  js  c++  java
  • Python笔记—练习题(基础数据类型)

    !1、有两个列表
    l1 = [11,22,33]
    l2 = [22,33,44]
    a.获取内容相同的元素列表
    for i in l1:
        if i in l2:
            print(i)
    # 返回结果  22 33
    b.获取l1中有,l2中没有的元素列表
    for i in l1:
        if i not in l2:
            print(i)
    # 返回结果  11
    c.获取l2中有,l1中没有的元素列表
    for i in l2:
        if i not in l1:
            print(i)
    # 返回结果  44
    d.获取l1和l2中内容都不同的元素
    for i in l1:
        if i not in l2:
            print(i)
    for i in l2:
        if i not in l1:
            print(i)
    # 返回结果  11  44
    
    !2、有1、2、3、4、5、6、7、8、8个数字,能组成多少个互不相同且无重复数字的两位数?
    count = 0
    for x in range(1,9):
        for y in range(1,9):
            if x != y:
                count = count + 1
    print(count)
    # 返回结果  56
    
    !3、输出一份99乘法表
    方法一:
    for x in range(1,10):
        for y in range(1,x+1):  #剔除相同的结果输出
            print(str(x) + ' * ' + str(y) + ' = ' + str(x*y))
    方法二:
    string = ''
    for x in range(1,10):
        for y in range(1,x+1): 
            string += str(x) + ' * ' + str(y) + ' = ' + str(x*y)+'	'
        print(string)
        string = '' 
    # 循环但每行都是清空前序重新再执行循环结果
    # 返回结果
    1 * 1 = 1
    2 * 1 = 2       2 * 2 = 4
    3 * 1 = 3       3 * 2 = 6       3 * 3 = 9
    4 * 1 = 4       4 * 2 = 8       4 * 3 = 12      4 * 4 = 16
    5 * 1 = 5       5 * 2 = 10      5 * 3 = 15      5 * 4 = 20      5 * 5 = 25
    6 * 1 = 6       6 * 2 = 12      6 * 3 = 18      6 * 4 = 24      6 * 5 = 30      6 * 6 = 36
    7 * 1 = 7       7 * 2 = 14      7 * 3 = 21      7 * 4 = 28      7 * 5 = 35      7 * 6 = 42    7 * 7 = 49
    8 * 1 = 8       8 * 2 = 16      8 * 3 = 24      8 * 4 = 32      8 * 5 = 40      8 * 6 = 48    8 * 7 = 56      8 * 8 = 64
    9 * 1 = 9       9 * 2 = 18      9 * 3 = 27      9 * 4 = 36      9 * 5 = 45      9 * 6 = 54    9 * 7 = 63      9 * 8 = 72      9 * 9 = 81
    
    !4、列表组合[1,2,4,5,6],多少种不同样的,数字不重复的组合
    li = [1,2,4,5,6]
    count = 0
    for x in li:
        for y in li:
            if x != y:
                count = count + 1
    print('计数' + '=' + str(count))
    # 返回结果    计数=20
    
    !5、用python开发程序自动计算方案:
    公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡、母鸡、小鸡都必须要有
    问:公鸡、母鸡、小鸡要买多少只刚好凑足100文钱?
    for a in range(1,20):
        for b in range(1,33):
            for c in range(1,100):
                if a + b + c == 100:
                    if a*5 + b*3 + c/3 == 100:
                        print(a,b,c)
    # 返回结果
    4 18 78
    8 11 81
    12 4 84
    
    !6、查找列表中元素,移除每个元素的空格,并查找以a或A开头,并且以c结尾的所有元素
    li = ['alec','aric','Alex','Tony','rain']
    tu = ('alec',' aric','Alex','Tony','rain')
    dic = {'k1':'alex','k2':'aric', 'k3':'Alex','k4':'Tony'}
    for i in li:
        if i[0] == 'a' or i[0] == 'A':
            if i[3] == 'c':
                print(i)
    # 返回结果
    alec
    aric
    for i in tu:
        i = i.strip(' ')
        if i[0] =='a' or i[0] == 'A':
            if i[3] == 'c':
                print(i)
    # 返回结果
    alec
    aric
    !第三题欠着#######################################
    
    !7、写代码,有如下元祖,按照要求实现每一个功能
    tu = ('alex','eric','rain')
    a、计算元祖长度并输出
    b、获取元祖的第2个元素,并输出
    c、获取元祖的第 1-2 个元素,并输出
    d、请使用for输出元祖的元素
    e、请使用for、len、range输出元祖的索引
    f、请使用enumrate输出元祖元素和序号(序号从10开始)
    print(len(tu))
    print(tu[2])
    print(tu[1:2])
    for i in tu:
        print(i)
    for l in range(len(tu)):
        print(l)
    for l, i in enumerate(tu,10):
        print(l,i)
    # 返回结果(e)
    # 10 alex
    # 11 eric
    # 12 rain
    
    !8、有如下变量,请实现要求的功能
    tu = ('alex',[11,22,{'k1':'y1','k2':['age','name'],'k3':(11,22,33)},44])
    a、讲述元祖的特性
    #一级元素不能被修改
    b、请问tu变量中的第一个元素‘alex’是否可被修改?
    #不能
    c、请问tu变量中的’k2‘对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素’Seven‘
    #列表,可以被修改
    l = tu[1][2]['k2']
    l.extend(['Seven'])
    print(l)
    # 返回结果    ['age', 'name', 'Seven']
    d、请问tu变量中的’k3‘对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素’Seven‘
    #元祖,不可以被修改
    
    !9、有以下列表:
    nums = [2,7,11,15,1,8,7]
    请找到列表中任意两个元素相加能够等于9的元素组合,如[(0,1),(4,5)]
    a = []
    for x in nums:
        for y in nums:
            if x + y == 9:
                a.append((x,y))
    print(a)
    # 返回结果    [(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)]
    
    !10、分页显示内容
    a、通过for循环创建301条数据,数据类型不限,如:
        alex-1    alex1@live.com    pwd1
        alex-2    alex2@live.com    pwd2
        alex-3    alex3@live.com    pwd3
        .....
    b、提示用户,请输入要查看的页码,当用户输入指定页码,则显示指定数据
    注意:
    -每页显示10条数据
    -用户输入页码是非十进制数字,则提示输入内容格式错误
    user_list = []
    for i in range(1,302):
        temp = {'name':'alex'+str(i),'email':'alex'+str(i)+'@live.com','pwd':'pwd'+str(i)}
        user_list.append(temp)
    print(user_list)
    #每页显示10条数据
    s = input('请输入页码:')
    s = int(s)
    # user_list[0,10]  1
    # user_list[10,20] 2
    # user_list[20,30] 3
    start = (s-1)*10
    end = s*10
    result = user_list[start:end]
    for item in result:
        print(item,type(item))
  • 相关阅读:
    聊聊“装箱”在CLR内部的实现
    Jenkins多环境持续集成架构实践
    .NET Core 学习资料精选:进阶
    .NET Core 学习资料精选:入门
    Docker 常用命令(.NET Core示例)
    Vistual Studio 安装、Sql Server 安装
    .NET项目迁移到.NET Core操作指南
    站点部署,IIS配置优化指南
    .NET Core开源:IIS集中化Web管理工具
    jenkins:一键回滚站点集群
  • 原文地址:https://www.cnblogs.com/joyceluyun/p/12502644.html
Copyright © 2011-2022 走看看