python练习题1.统计

统计在一个队列中的数字,有多少个正数,多少个负数,如

a=[1, 3, 5, 7, 0, -1, -9, -4, -5, 9]#方法一#用列表生成式,生成新的列表

b=[i for i in a if i>0]print ‘大于0的个数:%s‘%len(b)

c=[i for i in a if i<0]print ‘小于0的个数:%s‘%len(c)#方法二#coding:utf-8

a = [1, 3, 5, 7, 0, -1, -9, -4, -5, 8]#用传统的判断思维,累加

m =0

n=0for i ina:if i >0:

m+= 1

elif i <0:

n+= 1

else:pass

print "大于 0 的个数:%s" %mprint "小于 0 的个数:%s" %n2.字符串切片

字符串"axbyczdj",如果得到结果“abcd”

方法一

字符串切片

a=‘axbyczdj‘

print a[0::2] #这里用a[::2]结果是一样的

方法二

a=‘axbyczdj‘c=[]for i in range(len(a)): #对a这个字符串的长度进行遍历

if i % 2 ==0:

c.append(a[i])print ‘‘.join(c)3.字符串切割

已知一个字符串为“hello_world_xiaowang”, 如何得到一个队列["hello","world","xiaowang"]

a= ‘hello_world_xiaowang‘b= a.split(‘_‘)print b #或者 print a.split(‘_‘)

#4.格式化输出#已知一个数字为1,如何输出"0001"

a=1

print ‘%04d‘%a5.队列

已知一个队列,如: [1, 3, 5, 7], 如何把第一个数字,放到第三个位置,

得到:[3, 5, 1, 7]

insert 插入数据

a=[1, 3, 5, 7]

a.insert(3,a[0])print a[1:]#方法二

a=[1, 3, 5, 7]

a.insert(3,a[0])

a.remove(a[0])printa6.交换

已知 a= 9, b = 8,如何交换 a 和 b 的值,得到 a 的值为 8,b 的值为 9方法1

a=9b=8a,b=b,aprint ‘a的值为:%d‘ %aprint ‘b的值为:%d‘ %b

方法2

a=9b=8

#用中间变量c

c=a

a=b

b=cprint ‘a的值为:%d‘ %aprint ‘b的值为:%d‘ %b7.水仙花

打印出100-999 所有的"水仙花数",所谓"水仙花数"是指一个三位

数,其各位数字立方和等于该数本身。例如:153 是一个"水仙花数",

因为153=1 的三次方+5 的三次方+3的三次

sxh=[]for i in range(100,1000):

s=0

m=list(str(i))for j inm:

s+=int(j)**len(m)if i ==s:printi

sxh.append(i)print ‘100-999的水仙花数:%s‘ %sxh

用java解法:8.完全数

如果一个数恰好等于它的因子之和,则称该数为“完全数”,又称完美数或完备数。

例如:第一个完全数是6,它有约数 1、2、3、6,除去它本身 6外,其余3

个数相加,1+2+3=6。第二个完全数是 28,它有约数 1、2、4、7、14、28,

除去它本身 28外,其余5 个数相加,1+2+4+7+14=28。那么问题来了,

求1000以内的完全数有哪

a=[]for i in range(1,1000):

s=0for j in range(1,i):if i % j == 0 & j

s+=jif s ==i:printi

a.append(i)

java的解法:print "1000 以内完全数:%s" %a9.排序

用 python 写个冒泡

a= [1, 3, 10, 9, 21, 35, 4, 6]

s= range(1, len(a))[::-1]print(list(s)) #交换次数

for i ins:for j inrange(i):if a[j] > a[j + 1]:

a[j], a[j+ 1] = a[j + 1], a[j]print("第 %s 轮交换后数据:%s" % (len(s)-i+1, a))print(a)10.sort 排序

已知一个队列[1,3,6,9,7,3,4,6]

按从小到大排序

按从大到小排序

去除重复数字 用set

a= [1, 3, 6, 9, 7, 3, 4, 6]#1.sort 排序,正序

a.sort()printa#2.sort倒叙

a.sort(reverse=True)printa#3.去重

b =list(set(a))printb#11.阶乘#计算 n 的阶乘#计算 n!,例如 n=3(计算 321=6), 求 10的阶乘#from functools import reduce#a=1#b=reduce(lambda x,y:x*y, range(1,a+1))#print b

#def digui(x,y):#return x*y#a=1#b=reduce(digui,range(1,a+1)) # 1,11#print b

#12.递归函数#def digui(n):#if n ==1:#return 1#else:#return n*digui(n-1)#print n*digui(n-1)#a=5#print digui(a)

#13.斐波那契数列#已知一个数列:1、1、2、3、5、8、13、。。。。的规律为从 3#开始的每一项都等于其前两项的和,这是斐波那契数列。求满足规律的100以内的所有数据#a = 0#b = 1#while b < 100:#print b,#a,b = b,a+b

#14.幂的递归#计算 x 的 n 次方,如:3 的 4 次方 为 3*3*3*3=81

defmi(x, n):‘‘‘计算 x 的 n 次方‘‘‘

if n ==0:return 1

else:return x*mi(x, n-1)

x= 3num= 4

printmi(x, num)15.python编程题

写一个小程序:控制台输入邮箱地址(格式为 username@companyname.com),

程序识别用户名和公司名后,将用户名和公司名输出到控制台。

要求:1. 校验输入内容是否符合规范(xx@yy.com), 如是进入下一步,

如否则抛出提示"incorrect email format"。注意必须以.com结尾2. 可以循环“输入--输出判断结果”这整个过程3. 按字母 Q(不区分大小写)退出循环,结束程序importre#判断邮箱.com结尾

defis_mail_style(x):

a=re.match(r‘[0-9a-zA-Z\_\-]*@[0-9a-zA-Z]+(\.com)$‘,x)ifa:

yhm= re.findall("^(.+?)@", x)print "用户名:%s" %yhm[0]

gc= re.findall("@(.+?)\.com", x)print "公司名:%s" %gc[0]returnTrueelse:print "incorrect email format"

returnFalse

a= raw_input("请输入:")while 1:if a == "q" or a == "Q":

exit()else:ifis_mail_style(a):breaka= raw_input(u‘请输入‘)print ‘下一步!‘

16.python编程-遍历文件

如何遍历查找出某个文件夹内所有的子文件呢?并且找出某个后缀的所有文件?

#coding:utf-8

importosdef get_files(path=‘D:\\xx‘, rule=".py"):

all=[]for fpathe, dirs, fs in os.walk(path): #os.walk 是获取所有的目录

for f infs:

filename=os.path.join(fpathe,f)if filename.endswith(rule): #判断是否是"xxx"结尾

all.append(filename)returnallif __name__ == ‘__main__‘:

b= get_files(r"D:\讲课文档\课件\第二个月课件\Python+接口框架\POMDemo\pages")for i inb:printi

python软件测试工程师岗位多_软件测试工程师常见的17道Python面试题【多测师_王sir】...相关推荐

  1. Java当中jvm运行时区域新生代、老年代、永久代和Garbage Collection垃圾回收机制【杭州多测师】【杭州多测师_王sir】...

    1.本地方法栈和程序计数器 ==>偏底层一般不会接触到 2.方法区 ==>对应为永久代 3.虚拟机栈(stack) ==>对应为栈 4.堆(heap) ==>对应里面有新生代+ ...

  2. Java Spring框架入门详解教程【多测师_何sir】

    Spring框架入门详解教程 spring概述 spring结构 spring IOC spring DI spring概述 Spring是一个非常活跃的开源框架, 它是一个基于IOC和AOP来构架多 ...

  3. 三种常见加密算法MD5、对称加密,非对称加密【多测师_王sir】

    一.MD5加密 MD5加密的特点: 不可逆运算(不能破解.不能解密) 对不同的数据加密的结果是定长的32位字符(不管文件多大都一样) 对相同的数据加密,得到的结果是一样的(也就是复制) 抗修改性 : ...

  4. 史上最全软件测试工程师常见的面试题总结(四)【多测师_王sir】

    面试:神州数码 1.介绍你下你项目中一个自动化实现的流程   ==>看这篇http://duoceshi.cn/duoceshi/Tech_article/73.html 2.你觉得做自动化的意 ...

  5. python开发工程师岗位简介_python开发工程师是什么

    第86页-Python教程_Python图文教程-php中文网  https://www.php.cn/python-tutorials.html?p=86 python开发工程师是指运用Python ...

  6. ai python 面试_面试分享系列 | 17道Python面试题,让你在求职中无往不利

    今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷. 1.Python中pass语句的作用是 ...

  7. 面试分享系列 | 17道Python面试题,让你在求职中无往不利

    今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷. 这些问题由伯乐在线整理,原文是Pyth ...

  8. 面试分享:17道Python面试题,让你在求职中无往不利

    今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷. 1.Python中pass语句的作用是 ...

  9. 17道Python面试题,让你在求职中无往不利

    今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷. 1.Python中pass语句的作用是 ...

  10. 史上最全软件测试工程师常见的面试题总结【杭州多测师】【面试题】【杭州多测师_王sir】...

    2021.3.8号早上 1.是否接触过自动化测试?若做过,使用什么工具,写过多少自动化测试用例: robotframework+selenium2library selenium 2.是否接触过数据库 ...

最新文章

  1. Learn OpenGL (九):基础光照
  2. C/C++语言中计算int,float,double,char四种数据类型所能表示的数据范围
  3. RT-Thread pin设备驱动代码结构剖析
  4. WebSite和Web Application\网站与Web项目的区别
  5. html计时器组件,vue 计时器组件的实现代码
  6. linux的munit命令,LinuxUnit命令学习(三)
  7. Spring中的AOP和属性注入
  8. Qt学习-QString用法总结( setNum, number 函数)
  9. 数学建模暑期集训28:元胞自动机
  10. 【爱思考】CISP考试试题介绍(其中一部分)
  11. linux按行分割文件,按行切割大文件(linux split 命令简版)
  12. 李诞是怎么把吐槽变成一门生意的?
  13. 搭建分布式FastDFS集群
  14. Linux服务器开通443端口
  15. Android8.1 MTK平台 修改系统默认语言和默认输入法
  16. 【★】生成树算法终极解析!
  17. 凭借这份JVM高并发面试题,我拿下了阿里P7offer,现在分享给大家
  18. word里如何生成论文的目录
  19. CSDN个人博客管理
  20. R中gRain包的加载和使用

热门文章

  1. 【iphone】 如何将app发布到appstore中
  2. Linux使echo命令输出结果带颜色
  3. 成熟的云管理是什么样的?
  4. POJ 3311 Hie with the Pie(状压DP + Floyd)
  5. Android SDK Tools Platform-tools Build-tools
  6. cut最后几位 shell_shell中字符串截取命令:cut,printf,awk,sed
  7. 与程序员相关的CPU缓存知识
  8. netlink 011 -- generic netlink 编程入门
  9. OpenCV处理椒盐噪声以及提高对比度
  10. linux-inject:注入代码到运行的Linux进程中