Python练习题–持续更新

1、你是一个高级测试工程师,现在要做性能测试,需要你写一个函数,批量生成一些注册使用的账号。

产生的账号是以@163.com结尾,长度由用户输入,产生多少条也由用户输入,用户名不能重复,用户名必须由大写字母、小写字母、数字组成,结果如下图:

2、测试机器的磁盘太小,经常报警,要写一个清理日志的脚本,每次运行就把三天之前的日志删除,日志名的格式是xxx-20170623.log。

3、公司服务器,经常被别人攻击,要写个监控nginx日志的脚本,每分钟运行一次,如果这一分钟内同一个ip请求次数超过200次,加入黑名单,nginx日志每一行的格式如下:

46.161.9.44 - - [23/Jun/2017:03:17:37 +0800] "GET /bbs/forum.php?mod=forumdisplay&fid=2 HTTP/1.0" 200 48260 "http://aaaa.bbbbb.com/bbs/forum.php?mod=forumdisplay&fid=2" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" "-"
46.161.9.44 - - [23/Jun/2017:03:17:39 +0800] "GET /bbs/forum.php?mod=forumdisplay&fid=2 HTTP/1.0" 200 46200 "http://aaaa.bbbbb.com/bbs/forum.php?mod=forumdisplay&fid=2" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" "-"

4、额,来个小插曲,写程序求出1-100的累加和。1+2+3+4+5+.....+100。

5、不知不觉你已经写了很多python代码了,代码全部都放在e盘下面的my_code文件夹中,突然突发奇想,想统计了一下总共写了多少行代码,包括空行和注释,要把代码的行数、空行数、注释行数都统计出来。

6、有一个文件,里面有一些敏感词汇,如下,如果输入这些词,就用**代替,然后输出,例如输入今天没吃饭,碰到一个傻逼,原来那个sb是小明。输出今天没吃饭,碰到一个**,原来那个**是小明。

傻逼
傻b
煞笔
煞比
sb
傻B
shabi

7、写个简单的爬虫,把这个链接http://tieba.baidu.com/p/2166231880,里面所有的图片保存到本地。

8、有一个存着学生成绩的文件,里面存的是json串,json串读起来特别不直观,需要你写代码把它都写到excel中,并计算出总分和平均分,json格式如下

{
"1":["小花",99,100,98.5],
"2":["小王",90,30.5,95],
"3":["小明",67.5,49.6,88]
}

写完之后excel格式如下:

9、列表、元组、集合有什么区别?

10、下面几段代码中哪个是错误的写法,为什么?

var = [1,2,3,4]
var[1]=5
var1 = ‘abc123‘
var1[0]=‘s‘
var2 = (‘a‘,‘b‘,‘c‘,‘d‘)
var2[-1]=2
var3={‘a‘,3,‘b‘,‘4‘}
var3[2]=‘c‘
var4={‘name‘:‘lily‘,‘sex‘:‘nv‘}
print(var4[‘age‘])

11、怎么通过不引入第三方变量的方式,交换两个变量的值?

a=1
b=2

12、下面的代码执行结果是什么,为什么?

li = [1,1,2,3,4,5,6,7,8,9]
for i in li:
    if i%2!=0:
        li.remove(i)
print(li)

13、下面这段代码的执行结果是什么?

money = 500
def test(consume):

return money - consume

def test1(money):

return test(money)+money

money = test1(money)
print(money)

14、下面这段代码会打印什么,为什么?

def test():
global a
a = 5

def test1():
c = a+5
return c

res = test1()
print(res)
时间: 2024-07-30 20:32:20

Python练习题–持续更新的相关文章

python 学习(持续更新......)

1.Python没有数组,但是列表 (list) 跟数组很像:Python的元组 (tuple) 与列表相似,但是元组的元素不能 修改: 列表使用方括号,元组使用小括号,其实可以把元组看成是只读的列表: 在Python中,空字符串"", 0, 空列表[], 空字典{}, 空元组()都相当于False 2.%s操作符的使用 3.正则匹配(re  正则表达式模块) 字符串里,每个反斜杠都要写成 \\ ,例如 s='\\' 4.设置编码,在xxoo.py里写 import sys reloa

python基础——持续更新中

1. 模块导入 import xxx  或 from xxx import xxx ,尽量避免使用 from xxx import * 2. 变量.常量 局部变量:只能在一个函数内或一个类内使用,可赋值和更改值 全局变量:可在所有函数或者类中使用,可赋值和更改值 常量:确定的值,不能赋值和更改值 3. 数据类型 整数:如2 浮点数:如2.2 字符串:"abc" 布尔值:True/False 列表(list):[2,3,4] 字典(dict): {"name":&qu

Python拾遗(持续更新中)

虽然曾经使用Python做过几个小网站的后台,但未能触及Python的方方面面.本次参加51cto网的老男孩Python运维课程,来查漏补缺. 本篇博文将会持续更新,不断加入本人遗漏的Python知识点. 4月5日-4月11日: 在Linux下,使用 #!/usr/bin/python3 或者 #!/usr/bin/env python3 来指定改Python程序运行时使用的python版本 使用 type(变量名) 查询变量类型.存在 type(a) == str 这种用法. 使用 id(变量

Python中常用的一些操作总结(持续更新)

写在前面的话 其实也没有什么可以写的,或者说完全没有价值.因为你只要动一动手指就可以在Google上找到我要写的这些东西.只是我还不习惯好久没有碰我的blog,但是我又不想写没有价值的东西.或许有价值,只是在我一年两不编程的情况下,我会忘记那些我以前很熟悉的操作是怎么完成的,或许混到那个地步我的人生就开始悲剧了吧.总之,成长成我想要的样子我还是需要很长的路要走. 这一篇是会持续更新的,至少为了保证它看起来不那么水,也要让它持续更新 python中的进制转换 1.其他进制转换为10进制 所有的进制

python tips(持续更新)

1. 引用上一层目录 import syssys.path.append('..')import xx 2. python json JSON是一种轻量级的数据交换格式.可以解决数据库中文存储问题,对象序列化问题,等等. import json encodedjson = json.dumps(obj) decodejson = json.loads(encodedjson) 非常简单. 3. 静态方法 在函数前面@staticmethod @staticmethod def func(): p

Python·Jupyter Notebook各种使用方法记录·持续更新

Python·Jupyter Notebook各种使用方法记录·持续更新 你为什么使用 jupyter 原文地址:https://www.cnblogs.com/lhuser/p/8446420.html

自己总结的 iOS ,Mac 开源项目以及库,知识点------持续更新

自己在 git  上看到一个非常好的总结的东西,但是呢, fork  了几次,就是 fork  不到我的 git 上,干脆复制进去,但是,也是认真去每一个每一个去认真看了,并且也是补充了一些,感觉非常棒,所以好东西要分享,为啥用 CN 博客,有个好处,可以随时修改,可以持续更新,不用每次都要再发表,感觉这样棒棒的 我们 自己总结的iOS.mac开源项目及库,持续更新.... github排名 https://github.com/trending,github搜索:https://github.

Python练习题 024:求位数及逆序打印

[Python练习题 024] 给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. ---------------------------------------------- 这题如果不用递归,实在太简单了!!!代码上: str = input('请输入一个不多于5位的正整数:') print('这个数字是%s位数,逆序为%s.' % (len(str), str[::-1])) 输出结果如下: 请输入一个不多于5位的正整数:45931这个数字是5位数,逆序为13954

Python练习题 028:求3*3矩阵对角线数字之和

[Python练习题 028] 求一个3*3矩阵对角线元素之和 ----------------------------------------------------- 这题解倒是解出来了,但总觉得代码太啰嗦.矩阵这东西,应该有个很现成的方法可以直接计算才对-- 啰嗦代码如下: str = input('请输入9个数字,用空格隔开,以形成3*3矩阵:') n = [int(i) for i in str.split(' ')] #获取9个数字 mx = [] #存储矩阵 for i in ra