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 提取 ...
随机推荐
- ArcGIS对SLD样式的支持
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.ArcGISWMS服务对SLD的支持 在完成用geoserver的w ...
- Docker 创建 Crucible4.6.1 以及与 Crowd3.3.2 实现 SSO 单点登录
目录 目录 1.介绍 1.1.什么是 Crucible? 2.Crucible 的官网在哪里? 3.如何下载安装? 4.对 Crucible 进行配置 4.1.破解 Crucible 第一步 4.2. ...
- .NET Core 必备安全措施
.NET Core大大简化了.NET应用程序的开发.它的自动配置和启动依赖大大减少了开始一个应用所需的代码和配置量,本文目的是介绍如何创建更安全的.NET Core应用程序. 1.在生产中使用HTTP ...
- 从0到1打造自己的VOIP网络电话系统(基于FreePBX)
从0到1打造自己的网络电话系统 最近流量卡越来越便宜了,看看自己手里的"坑不死老用户"的联通卡,顿时感觉到深深的恶意,但是iPhone没有双卡功能,所以只好自己动手打造一个网络电话 ...
- 入门PHP你需要了解些什么?
1.[PHP]PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛 ...
- 编辑器开发之 Range 范围对象的学习
写在前面: 网上有各种富文本编辑器,微博分享等操作,这些功能非常实用,他们就是使用 range,selection 对象来实现的,这两个对象偏冷门,不涉及编辑器一般用不到,range 对象是对选区的操 ...
- Java Spring MVC框架搭建(一)
环境准备 >>>>>>java JDK和tomcat,eclipse 1.创建项目 2.项目名称自定义,这边为demo 3.我们已经创建完一个动态网站的项目,还得下 ...
- 死磕 java集合之HashSet源码分析
问题 (1)集合(Collection)和集合(Set)有什么区别? (2)HashSet怎么保证添加元素不重复? (3)HashSet是否允许null元素? (4)HashSet是有序的吗? (5) ...
- 【重学计算机】机组D7章:总线
1. 系统总线的特性及应用 总线概念:将计算机系统中各部件连接起来 总线分类:(外部/内部,系统/非系统,串行/并行,同步/异步...) 按用途分类: 存储总线:cpu与存储器 系统总线:连接存储总线 ...
- Android6.0运行时权限(基于RxPermission开源库)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 在6.0以前的系统,都是权限一刀切的处理方式,只要用户安装,Manifest申请的权限都会被赋予,并且安装后权限也撤销不了. And ...