python练习题_python练习题目 - CSDN
精华内容
参与话题
  • 经典python题目练习

    万次阅读 多人点赞 2017-09-12 11:49:41
    1、给定一个非空正整数的.../usr/bin/python list = [1,1,1,6,6,7,3,9] a = {} for i in list: if list.count(i)>0: a[i] = list.count(i) #a[i]是字典value的值 print a # items()方法将字典的元素转化为了元...

    1、给定一个非空正整数的数组,按照数组内数字重复出现次数,从高到低排序

    #!/usr/bin/python

    list = [1,1,1,6,6,7,3,9]
    a = {}
    for i in list:
      if list.count(i)>0:
        a[i] = list.count(i)  #a[i]是字典value的值

    print a
    # items()方法将字典的元素转化为了元组
    # key参数对应的lambda表达式的意思则是选取元组中的第二个元素作为比较参数
    # lambda x:y中x表示输出参数,y表示lambda函数的返回值
    b = sorted(a.items(),key=lambda item:item[1])
    #逆转次数从大到小排序
    b.reverse()
    print b


    2、输入输出

    3、输出格式多样

    4、list.append(i);list.sort() 

    5、n = m[:]   列表n复制列表m全部数据

    6、time.sleep(1)# 暂停 1 秒

    7、a%b==0 表示能被整除;a/b 获得相除后的值(非余数)

    8、列表组合后抛开重复值,排序

    9、判断是否字符、数字、空格

    10、求列表组合值

    11、1!+2!+3!的和

    12、递归调用,自定义方法,实现倒序字符串

    13、python切片

     

    a = ['one', 'two', 'three']
    print a[0]

     

    结果:one

    ************************

    a = ['one', 'two', 'three']
    print a[0:2]

    结果:one,two(显示序号2 之前的数据)

    *************************

     

    a = ['one', 'two', 'three']
    print a[::-1]

    结果:three,two,one(数据倒序)

    **************************

     

    a = ['one', 'two', 'three']
    print a[::2]

    结果:one,three(间隔显示数据)

    14、函数调用

    15、排序操作 sort(),reverse()

    b = sorted(a)

    16、插入数值排序

    17、变量作用域

    18、嵌套列表相加

    19、变量值互换

    20、计算字符串长度

    21、列表中最小和最大值

    22、连接两个表

    23、 字典最大值

    24、列表生成式

    25、生成器

    在Python中,这种一边循环一边计算的机制,称为生成器(Generator)

    方法一:把一个列表生成式的[]改成(),就创建了一个generator

    方法二:通过特殊函数创建:如果一个函数定义中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator

    例如:递归斐波那契数列

    1、普通函数

    2generator方式:

    ps:函数是顺序执行,遇到return语句或者最后一行函数语句就返回。而变成generator的函数,在每次调用next()的时候执行,遇到yield语句返回,再次执行时从上次返回的yield语句处继续执行。

    26、迭代器

     

    展开全文
  • python习题及答案

    万次阅读 多人点赞 2018-06-10 15:50:50
    按要求编写程序(任选三) 1、 编写一个从 1 加到 end 的当型循环。变量 end 的值由键盘输入。假如输入 end 的值为 6,则代码输出的结果应该是 21,也就是 1+2+3+4+5+6 的结果(不要用 sum 作为变量,因为它是内置...

                                        作业四
    按要求编写程序(任选三题)
    1、 编写一个从 1 加到 end 的当型循环。变量 end 的值由键盘输入。假如输入 end
    的值为 6,则代码输出的结果应该是 21,也就是 1+2+3+4+5+6 的结果(不要用
    sum 作为变量,因为它是内置函数)。

    a = input()
    b=int(a)
    total = 0
    for i in range(b+1):
        total = i+total
    print(total)
    
     

    2、从键盘输入一个整数,判断该数字能否被 2 和 3 同时整除,能否被 2 整除,能否被 3 整除,不能被 2 和 3 整除。输出相应信息。

    a = input()
    b=int(a)
    if b%2==0 and b%3==0:
        print('该数字能被 2 和 3 同时整除')
    elif b%2==0:
        print('该数字能被 2 整除')
    elif b%3==0:
        print('该数字能被 3 整除')
    else :
        print('该数字不能被 2 和 3 整除')

     


    3、 一个数如果恰好等于它的因子之和,这个数就称为“完数”,例如, 6 的因子
    为 1、 2、 3,而 6=1+2+3,因此 6 是“完数”。编程序找出 1000 之内的所有完数,
    并按下面的格式输出其因子:
    6 its factors are 1, 2, 3

     

     

     

    
     

     

     

    
     
    
     
    
     
    
     
    
     

     

     

    
     

    for i in range(1001): if i==0: continue s = 0 for j in range(i): if j==0: continue if i%j==0: s=s+j if s==i: print('{} its factors are '.format(i),end='') for j in range(i): if j == 0: continue if i % j == 0: print(j,end=' ') print('\n')

    4、打印出所有的“水仙花数”,所谓“水仙花数”是指一个 3 位数,其各位数字立方和等于该数本身。例如, 153 是一个水仙花数,因为 153=13+53+33

     

     

    for i in range(1000):
        if i<100:
            continue
        s = 0
        a = int(i//100)
        b = int(i//10%10)
        c = int(i%10)
        s = a**3+b**3+c**3
        if s == i:
            print("{} 是水仙花数".format(i))
    

    作业六
    说明:第四题选作
    一、 输出 1~100 之间不能被 7 整除的数,每行输出 10 个数字,要求应用字符
    串格式化方法(任何一种均可) 美化输出格式。 输出效果为:

    j=0
    for i in range(101):  #循环
        if i>0 and i % 7 == 0: #如果能整除7,则再执行循环
            continue
        elif i>0:    #如果大于0并且不能被7整除,输出;
            print("{:3d}".format(i), end=' ')
            j += 1   #j用来控制每行输出是否是10个
            if j % 10 == 0:
                print('\n')
                j = 0
        else:
             continue;

    作业八

     

    一、 创建文本文件FarewellCambridge.txt。内容为:

    Very quietly I take my leave

    As quietly as I came here;

    Quietly I wave good-bye

    To the rosy clouds in the western sky.

    The golden willows by the riverside

    Are young brides in the setting sun;

    Their reflections on the shimmering waves

    Always linger in the depth of my heart.

    The floating heart growing in the sludge

    Sways leisurely under the water;

    In the gentle waves of Cambridge

    I would be a water plant!

    That pool under the shade of elm trees

    Holds not water but the rainbow from the sky;

    Shattered to pieces among the duckweeds

    Is the sediment of a rainbow-like dream?

    To seek a dream? Just to pole a boat upstream

    To where the green grass is more verdant;

    Or to have the boat fully loaded with starlight

    And sing aloud in the splendor of starlight.

    But I cannot sing aloud

    Quietness is my farewell music;

    Even summer insects heap silence for me

    Silent is Cambridge tonight!

     

    并用写字板查看(注意:直接将上述诗句拷贝到程序中,不需要自己再次录入)。

    file = open('C:/Users/uestc2020/Desktop/hanzhengqiang.txt','w')
    #在桌面新建一个韩正强.txt文本文档,并且是写的模式
    #在文本中写入文字:
    file.write('''Very quietly I take my leave
    As quietly as I came here;
    Quietly I wave good-bye
    To the rosy clouds in the western sky.
    The golden willows by the riverside
    Are young brides in the setting sun;
    Their reflections on the shimmering waves
    Always linger in the depth of my heart.
    The floating heart growing in the sludge
    Sways leisurely under the water;
    In the gentle waves of Cambridge
    I would be a water plant!
    That pool under the shade of elm trees
    Holds not water but the rainbow from the sky;
    Shattered to pieces among the duckweeds
    Is the sediment of a rainbow-like dream?
    To seek a dream? Just to pole a boat upstream
    To where the green grass is more verdant;
    Or to have the boat fully loaded with starlight
    And sing aloud in the splendor of starlight.
    But I cannot sing aloud
    Quietness is my farewell music;
    Even summer insects heap silence for me
    Silent is Cambridge tonight!''')
    

     

     

     

     

     

    二、 对于上一题建立的文本文件,使用read()读文件,并在屏幕上显示。

    file = open('C:/Users/uestc2020/Desktop/hanzhengqiang.txt','r')
    #在桌面打开一个韩正强.txt文本文档,并且是读的模式
    #读取文件,并且输出:
    s=file.read()
    print(s)

    三、 根据给定的文本文件words.txt(可将该文件存放在任意目录,注意打开文件时要加入正确的路径)编写函数loadWords(),words.txt包含若干小写英文单词。要求:

    1) 读入该文件,统计并输出单词的个数

     

     

    2) 返回单词列表(注意:指返回单词列表即可,不要在屏幕上显示)

    import re
    #统计单词个数:
    def count_words(file_path):
        with open(file_path) as file:
            text = file.read()
            words = re.findall(r'[a-zA-Z]+', text)
            count = len(words)
            return count
    print(count_words('C:/Users/uestc2020/Desktop/words.txt'))
    

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    习题十

     

    一、 编写函数devide(x, y),x为被除数,y为除数。要求考虑异常情况的处理。

    1、 被零除时,输出"division by zero! ";

    2、 类型不一致时,强制转换为整数再调用本函数;

    3、 若没有上述异常则输出计算结果。

     

    def test(password, earning, age):
        #assert 1<0
        assert password[0] not in ['0','1','2','3','4','5','6','7','8','9']
        assert int(earning)>=0 and int(earning)<=20000
        assert int(age)>=18 and int(age)<=70
        return True
    print(test('as','11','30'))

     

    二、 编写函数test(password, earning, age)用于检测输入错误。要求输入密码password第一个符号不能是数字,工资earnings的范围是0—20000,工作年龄的范围是18—70。使用断言来实现检查,若三项检查都通过则返回True。

     

    def test(password, earning, age):
        #assert 1<0
        assert password[0] not in ['0','1','2','3','4','5','6','7','8','9']
        assert int(earning)>=0 and int(earning)<=20000
        assert int(age)>=18 and int(age)<=70
        return True
    

     

    习题十一

     

    一、 使用tkinter库完成下列程序

    1、编程实现如下GUI(只显示,没有回调函数)

     

     

    import tkinter
    
    root = tkinter.Tk()
    root.title('tk')
    theLabel=tkinter.Label(root,text='Welcome to Python Tkinter')
    theLabel.pack()
    root.geometry('500x300+300+300')
    button = tkinter.Button(root,text='Click Me')
    button.pack()
    root.mainloop()
    

     

     

     

    2、 编程响应用户事件。“OK”按钮前景为红色,按下“OK”按钮显示"OK button is clicked",”Cancel“按钮背景为黄色,按下”Cancel“按钮显示"Cancel button is clicked"。

     

    import tkinter
    
    def ok_on_click():
        print('OK button is clicked')
    def cancel_on_click():
        print('Cancel button is clicked')
    root = tkinter.Tk()
    root.title('zy')
    label = tkinter.Label(root)
    buttonok = tkinter.Button(root,text='OK',fg='red')
    buttonok['command']=ok_on_click
    label.pack()
    buttonok.pack()
    root.geometry('500x300+300+300')
    buttoncancel = tkinter.Button(root,text='Cancel',bg='yellow')
    buttoncancel['command']=cancel_on_click
    label.pack()
    buttoncancel.pack()
    root.mainloop()
    

     

     

     

     

    二、 使用Turtle库完成下列程序

    1、绘制一个红色的五角星图形,如图所示。

     

    import  turtle as tk
    tk.fillcolor("red")
    tk.begin_fill()
    while True:
        tk.forward(200)
        tk.right(144)
        if abs(tk.pos()) < 1:
                break
    tk.end_fill()
    input()
    

     

     

     

    2、螺旋线绘制(每一圈是四个线段组成,一共绘制100个线段)。绘制一个螺旋线的图形,如图所示。

     

     

     

    import turtle
    import time
    turtle.pensize(1)
    for x in range(100):
        turtle.forward(x)
        turtle.left(90)
    time.sleep(100)

     


     

     

    展开全文
  • 100道python经典练习题

    万次阅读 多人点赞 2018-09-30 14:42:56
    链接:https://pan.baidu.com/s/1K0iuZKJukLoGQ8OBy7xq1Q 提取码:2s6q 链接长期有效,如有疑问,欢迎评论区交流。

    链接:https://pan.baidu.com/s/1K0iuZKJukLoGQ8OBy7xq1Q
    提取码:2s6q

    链接长期有效,如有疑问,欢迎评论区交流。

    展开全文
  • Python 练习题100道

    2019-02-28 07:58:47
    Python 练习题100道
  • python小练习题(python练习题

    千次阅读 2018-07-09 20:02:01
    1、猜数字游戏由某人随机出一个指定范围内的数,然后其他人一个一个猜,猜的过程中区间不断缩小,直到猜中为止。import random i = int(input("random start:")) j = int(input("...

    1、猜数字游戏

    由某人随机出一个指定范围内的数,然后其他人一个一个猜,猜的过程中区间不断缩小,直到猜中为止。

    import random
    
    i = int(input("random start:"))
    j = int(input("random end:")) 
    rand = random.randrange(i,j)     # 生成区间内的随机数
    print('Random number in [' + str(i) + ',' + str(j) + '] generated!')
    num = int(input("Please guess the number:"))
    count = 0
    while(num != rand):
        count += 1
        if (num < rand):
            print('Lower than the answer')
        else:
            print('Higher than the answer')
        num = int(input('Guess the number again:'))
    
    print(' You get the answer with [%d] times' % count)

    2、有四个数字1、2、3、4,能组成多少个互不相同且数字不重复的三位数。

    count = 1
    lst = []
    for i in range(1,5):
        for j in range(1,5):
            for k in range(1,5):
                if (i != k) and (i != j) and (j != k):
                    lst.append(i*100+j*10+k)
                    count += 1
    print(count)
    print(lst)

    3、从键盘输入一个字符串,将小写字母全部转换成大写字母,输出到磁盘文件“test”中进行保存。

    in_put = input('Please input string:')
    new_str = in_put.upper()
    with open('test.txt','w') as f:
        f.write(new_str)
    
    with open('test.txt','r') as f:
        f_str = f.read()
        print(f_str)
    
    # >Please input string:ssssAAAKKKssss
    # >SSSSAAAKKKSSSS

    4、输入3个数,按照从小到大输出

    x = int(input('Please input:'))
    y = int(input('Please input:'))
    z = int(input('Please input:'))
    
    l = [x,y,z]
    new_list = sorted(l)
    print(new_list) 
    
    # >Please input:22
    # >Please input:43
    # >Please input:55
    # >[22, 43, 55]

    5有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和

    a = 2
    b = 1
    
    count = 0
    sum_num = 0
    
    while count != 20:
        count += 1
        sum_num += a/b
        t = a+b  # 3    # 5
        b = a    # 2    # 3
        a = t    # 3
    
    print(sum_num)  # 32.66026079864164
    a = 2
    b = 1
    sum_num = 0
    
    for i in range(20):
        sum_num += a/b
        t = a+b  # 3    # 5
        b = a    # 2    # 3
        a = t    # 3
    
    print(sum_num)  # 32.66026079864164



    展开全文
  • Python函数练习题

    万次阅读 2018-09-06 13:51:07
    函数部分: 1.编写一个名为collatz()的函数,它有一个名为number的参数  如果参数是偶数,那么collatz()就打印出number//2  如果number是奇数,collatz()就打印3*number+1 def collatz(number): ...
  • 100道Python编程练习题

    万次阅读 多人点赞 2019-01-31 17:15:57
    100道Python编程练习题,这些题如果能坚持每天至少完成一道,一定可以帮大家轻松 get Python 的编程技能。目前,这个项目已经获得了 2924 Stars,2468 Forks。 首先,这 100+ 练习题根据难易程度分为三个等级:...
  • python练习题--牛客网

    千次阅读 2019-05-31 10:35:33
    Python 中字符串的前导r代表原始字符串标识符,该字符串中的特殊符号不会被转义,适用于正则表达式中繁杂的特殊符号表示。 最典型的例子,如要输出字符串\n,由于反斜杠的转义,因此一般的输出语句为: 1 ...
  • Python新手简单练习题

    千次阅读 热门讨论 2019-07-17 18:14:12
    Python新手简单练习题 (1)设计“过7游戏”的程序,打印1-100之间除了含7和7的倍数以外的数字。 for i in range(101): if i%7!=0: print(i,end=" ") 运行结果: 1 2 3 4 5 6 8 9 10 11 12 13 15 16 17 18...
  • [Python] If语句练习题

    千次阅读 2019-02-28 21:30:54
    目录 一、输入三个整数x,y,z,请把这三个数由小到大输出 方法1:确定最大值和最小值做比较(比较繁琐) 方法2:通过两两比较重新赋值,确定最小值 方法3:使用排列组合的方式连续判断 二、依次输入三角形的三边...
  • Python基本语句练习题

    万次阅读 多人点赞 2018-09-04 18:52:42
    1、 计算0~100之间所有奇数的累积求和 i = 0 result = 0 while i <= 100: if i % 2 != 0: print i result +=i i += 1 print '0~100之间的奇数累加的结果是 %d' %result ...row = 1...
  • 吐血总结!50道Python面试集锦(附答案)

    万次阅读 多人点赞 2019-07-05 20:56:12
    Python是目前编程领域最受欢迎...这些面试涉及Python基础知识、Python编程、数据分析以及Python函数库等多个方面。 Q1、Python中的列表和元组有什么区别? Q2、Python的主要功能是什么? Python是一种解释型...
  • python练习题

    千次阅读 2018-12-02 14:22:25
    python练习题 银行流程 account = ‘wangyundong’ password = ‘123456’ money = 10000 userAccount = input(‘请输入账号:’) userPsw = input(‘请输入密码:’) if account == userAccount and password == ...
  • Python面试的一些心得,与Python练习题分享

    万次阅读 多人点赞 2019-09-17 10:14:14
    项目打算招聘一个自动化运维,主要需求是python、Linux与shell脚本能力。但面试几天发现一些问题: 简历虚假 这个不管哪行,简历含水量大都是普遍存在的,看简历犀利的一比,一面是能力弱的一腿。谁都希望自己80分...
  • 130道python练习题.zip

    2020-03-30 13:25:11
    python基础知识练习题,常见常用的,可以作为参考,挺不错的,也有许许多多的讲解,适合python巩固基础知识和入门
  • 廖雪峰Python练习题

    2018-06-27 12:02:54
    今天主要学习了python中filter的用法。Python内建的filter()函数主要用于过滤序列,和map()类似,filter()也接收一个函数和一个...做了两道练习题,第一道是用filter求素数。第二道是用filter()筛选出回数。 @Pyt...
  • Python经典练习题PDF

    2017-11-28 15:12:24
    Python经典练习题 经典练习题,帮助大家巩固和深入理解基础知识,不论是初学者还是已经工作的朋友,都可以拿来练手 提供100道经典题目,并分析题目,提供源码帮助大家掌握基础知识,
  • Python练习题

    2018-11-12 13:03:24
    python练习题,1~11单元,分别简介了元组,列表,字典,类等
  • Python100经典练习题原题,和Python100经典练习题答案,不容错过,修炼一番,定能成为Python高手
  • 包含100道简单的python练习题,可以给刚入门Python的同学提供联系的用途,附答案,可以自己对照检查!
1 2 3 4 5 ... 20
收藏数 56,448
精华内容 22,579
关键字:

python练习题