文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python简单试题1

2023-01-31 00:34

关注

1,相乘次数

题目要求描述:
一个整数每一位上的数字相乘,判断是否为个位数,若是则程序结束
,不是则继续相乘,要求返回相乘次数。
例:39 > 3*9=27 > 2*7=14 > 1*4=4     返回 3
   105 > 1*0*5=0                    返回0
   4                                返回0
def multiplicative_times(num):
    i = 0 #用来计算相乘次数
    while num // 10 > 0 : # 注意要用 // 这是向下取整除法
        num1 = 1
        while num != 0: # 循环,直到 num=0
            num1 = (num%10)*num1 # 取出个位然后相乘
            num = num // 10 # 除以十,不要小数部分
        i += 1 # i = i+ 1
        num = num1 # 循环继续
    return i

2,筛选出四个字母的字符串。

给定一个列表,其中包含都是字符串,但字符串长度不相同,让你写一个函数,找出长度为四
的字符串。
def friend(x):
    y = [] # 定义一个空列表
    for i in x: # 循环给定的列表
        if len(i) == 4: # 判断字符串长度是否为4
            y.append(i) # 将长度为4的字符串加入到列表中
    return y

3,斐波那锲数列的问题

类似于斐波那锲数列的算法,给定一个列表,其中包含三个数字,每一个元素为前面三个元素的和(前三个元素除外),你写一个函数
,参数为一个列表,一个整数。列表包含三个参数,数字表示返回生成列表的前n项。 例tribonacci([1.1.1], 5) >>> 5 tribonacci([0,0,1],4) >>> 1
def tribonacci(signature, n):
    for i in range(3,n): # 3 到 n-1循环
        signature.append(signature[i-1] + signature[i-2] + signature[i-3]) # 根据算法写公式
    return signature[0:n] 
# 注意:最后返回值不可以写成return signature这样当n为1,2,时不符合题意

4,求多项式的和

1 + 1/4 + 1/7 +1/10 + 1/13...形如这样的多项式计算前几项的和,
写一个函数返回计算的和值,传入参数为自然数,返回值保留两位小数,以字符串形式返回
例:  1           1.00
     2             1.25
     3           1.39
     4         1.49
def series_sum(n):
    sum = 1
    if n == 1 :
        return ('%.2f' % sum) # 格式化输出,将浮点数转化为字符串并保留两位小数
    elif n == 0 :
        return ('%.2f' % 0)
    else :
        for i in range(1,n):
            sum += 1/(i*3+1)
    return ('%.2f' % sum)
# 注意自然数中包括零

5,求重复次数字母的数量

写一个函数,参数为字符串,用来求出字符串中出现重复字符的个数,
假定字符串只包含字母和数字,字母不区分大小写
"abcde" -> 0 # 没有出现重复的字符 "aabbcde" -> 2 # 'a' 和 'b' "aabBcde" -> 2 # 'a' 出现两次 'b' 出现两次 (`b` 和 `B`) "indivisibility" -> 1 # 'i' 出现六次 "Indivisibilities" -> 2 # 'i' 出现七次 's' 出现两次 "aA11" -> 2 # 'a' 和 '1' "ABBA" -> 2 # 'A' 和 ‘B'都出响两次
def duplicate_count(text):
    text = text.upper() # 将字符串字母都大写
    #不能写成 text,upper() 因为字符串是不可变得
    #或者 text = text.lower 将字符串字母小写
    x = set(text) # 创建一个集合 集合具有无序性,不重复性,会去掉重复的字母
    count = 0 # 用来计算出现重复字母的次数
    x = list(x) # 将集合转化为列表,因为集合无法按照位置进行存取
    for i in x:
        if text.count(i) > 1:
            count+=1
    return count

 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯