Python入门测试
1.比如自然数10以下能被3或者5整除的有,3,5,6和9,那么这些数字的和为23.
求能被3或者5整除的1000以内数字的和
- multiple_of_threes=[]
- for multiple_of_three in range(0,1001,3):
- multiple_of_threes.append(multiple_of_three)
- sum_of_threes=sum(multiple_of_threes)
- print(multiple_of_threes)
- print(sum_of_threes)
- multiple_of_fives=[]
- for multiple_of_five in range(0,1001,5):
- multiple_of_fives.append(multiple_of_five)
- sum_of_fives=sum(multiple_of_fives)
- print(multiple_of_fives)
- print(sum_of_fives)
- print(sum_of_threes+sum_of_fives)
- multiple_of_threes.extend(multiple_of_fives) #3的倍数和5的倍数合并成一个列表
- print(sum(multiple_of_threes))
2.在一个数组指定数组里面移除指定的数字,并返回新的数组并从大到小排序
比如:
nums=[1,6,6,3,6,2,10,2,100],remove_num=6
- nums=[11,22,6,6,58,36]
- while 6 in nums:
- nums.remove(6)
- nums.sort(reverse=True)
- print(nums)
3.从排序好的任意数组列表里面删除重复元素(你不知道列表里面有多少个重逢的元素)
比如:
nums=[1,3,3,5,5,8,10,10,100,100],处理完之后是:[1, 3, 5, 8, 10, 100]
nums=[1,3,3,5,5,8,10,10,100,100]
- #删除列表中的重复值
- num=[11,22,6,13,6,11,58,36]
- num2=[]
- for i in num:
- if i not in num2:
- num2.append(i)
- print(num2)#[11, 22, 6, 13, 58, 36]
- #转换成集合,再转换成列表输出
- num=[11,22,6,13,6,11,58,36]
- print(list(set(num)))#[36, 6, 11, 13, 22, 58]
4.从排好序的数组里面,删除重复的元素.重复的数字最多只能出现2次
nums=[1,1,1,2,2,3]
要求返回nums=[1,1,2,2,3]
- #删除列表中重复3次及以上的数值
- list=[1,1,1,2,2,2,3,3,4,4]
- for i in list:
- if list.count(i)>2:
- list.remove(i)
- print(list)
- #将一个列表中重复3次以下的数值插入到另一个列表中
- list=[1,1,1,2,2,2,3,3,4,4]
- list2=[]
- for i in list:
- if list.count(i)<3:
- list2.append(i)
- print(list2)
5.给定2个字符串s1,s2,判定s2能否给s1做循环移位得到字符串的包含。比如:
s1="AABBCD",s2="CDAA".
6.给定一个字符串,寻找没有字符串重复的最长子字符串.
比如:"abcabcbb" 找到的是"abc",长度为3,比如"bbbbb"找到的是"b",长度为1
7.有一串长的字符串 names="LI XIA ,ZHAO MING ,LAO WANG *,DA XIONG >,LI MEI MEI," \
"CHANG JIANG,LI QIANG,ZHANG WU JI,ZHANG SAN FENG," \
"DU GU QIU BAI,QIAO FENG"
要求:
1).过滤出所有的名字,去掉每个名字的左右的空格和乱码,每个名字的首字母大小,比如'LAO WANG *',处理成'Lao wang'
2).统计出所有名字里面名字最长的
3).统计出同姓的人名单
- names="LI XIA ,ZHAO MING ,LAO WANG *,DA XIONG >,LI MEI MEI," \
- "CHANG JIANG,LI QIANG,ZHANG WU JI,ZHANG SAN FENG,DU GU QIU BAI,QIAO FENG"
- import re
- #去掉字符串里的特殊字符和空格,并让名字首字母大写
- names = re.sub('[*\>]','',names)
- names = names.lower()
- names = names.split(',')
- names = [name.strip().capitalize() for name in names]
- names2 = ','.join(names)
- print(names2)
- #统计列表中名字最长的
- num_list = [len(name) for name in names]
- long_name_index = num_list.index(max(num_list))
- long_name = names[long_name_index]
- print(long_name)
- #统计出同姓人名单
- print(names)
- #把列表中的姓名分开,组成一个列表,所有姓名列表加入一个大列表
- names3 = [name.split(' ') for name in names]
- print(names3)
- #把所有的姓存入一个列表
- first_name = [name_list[0] for name_list in names3]
- print(first_name)
- #找出同姓的人
- same_first_name = []
- for i in first_name:
- if first_name.count(i) > 1:
- name_index = first_name.index(i)
- same_first_name.append(names[name_index])
- print(same_first_name)
8.数字1到5可以被写成:one,two,three,four,five,因此这些字母的总长度为:
3+3+5+4+4=19,现在求序列1到1000(包括1000),这些数字写成单词,总长度为多少
比如 342(three hundred and forty-two)为23字母,空格和-不计算.
比如 115(one hundred and fifteen)为20个字母
比如 1000(one hundred)为11个字母
Python入门测试的更多相关文章
- python入门-测试代码
断言 测试函数 def get_formatted_name(first,last): """generate a neatly formattef full name& ...
- visual studio 2015 搭建python开发环境,python入门到精通[三]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...
- Python自动化运维之1、Python入门
Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...
- Python入门教程(1)
人生苦短,我用Python! Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于19 ...
- Python入门(一):PTVS写Python程序,调试模式下input()提示文字乱码问题
前两天写了Python入门(一),里面提到,使用VS2013+PTVS进行Python开发. 就在准备为第二篇写个demo的时候,发现了一个问题,各种解决无果,有些纠结 Python中输入函数是inp ...
- python入门(11)条件判断和循环
python入门(11)条件判断和循环 条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: ag ...
- python入门(9)字符串和编码
python入门(9)字符串和编码 字符串是一种数据类型,比较特殊的是字符串有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理. 最早的计算机在设计时采用8个比 ...
- python入门(8)数据类型和变量
python入门(8)数据类型和变量 数据类型 在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 ...
- Python入门经典. 以解决计算问题为导向的Python编程实践
Python入门经典. 以解决计算问题为导向的Python编程实践(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1juLsew8UiOErRheQPOuTaw 提取 ...
随机推荐
- 关于int main( int argc, char* argv[] ) 中arg和argv参数的解析及调试
https://blog.csdn.net/LYJ_viviani/article/details/51873961 https://stackoverflow.com/questions/30241 ...
- odoo权限机制
转两篇关于权限的2篇文章,加深这方面的认识.注:后面附有原作者地址,希望不构成侵权. 第一篇:http://www.cnblogs.com/dancesir/p/6994030.html Odoo的权 ...
- softmax函数详解
答案来自专栏:机器学习算法与自然语言处理 详解softmax函数以及相关求导过程 这几天学习了一下softmax激活函数,以及它的梯度求导过程,整理一下便于分享和交流. softmax函数 softm ...
- 从壹开始微服务 [ DDD ] 之六 ║聚合 与 聚合根 (下)
前言 哈喽大家周二好,上次咱们说到了实体与值对象的简单知识,相信大家也是稍微有些了解,其实实体咱们平时用的很多了,基本可以和数据库表进行联系,只不过值对象可能不是很熟悉,值对象简单来说就是在DDD领域 ...
- 使用xUnit为.net core程序进行单元测试(1)
导读 为什么要编写自动化测试程序(Automated Tests)? 可以频繁的进行测试 可以在任何时间进行测试,也可以按计划定时进行,例如:可以在半夜进行自动测试. 肯定比人工测试要快. 可以更快速 ...
- LINQ 常规实践总结
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续两次OrderBy,后面一个有可能会打乱前面一个的排序顺序,可能与预期不符. 要实现sql中的order by word,nam ...
- js判断参数是否为非数字
isNaN() 函数用于检查其参数是否是非数字值.
- 【Android Studio安装部署系列】十四、Android studio移除工程和删除项目
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio删除工程.项目的操作步骤. 移除工程 主要用于从最近打开的项目列表中移除.硬盘中还是存在这个项目的. F ...
- [Nodejs] 用node写个爬虫
寻找爬取的目标 首先我们需要一个坚定的目标,于是找个一个比较好看一些网站,将一些信息统计一下,比如 url/tag/title/number...等信息 init(1, 2); //设置页数,现在是1 ...
- 数据库艰难求生之路(基础:创建数据库表格)part1
创建表格 1.创建表格之identity create table TableName( id ,), col_1 ), col_2 ) ) 这是一个简单的表格创建,identity这个是指在创建表 ...