py4测试题

1、8<<2等于?
32
2、通过内置函数计算5除以2的余数
divmod(5,2)
3、s=[1,"h",2,"e",[1,2,3],"l",(4,5),"l",{1:"111"},"o"],将s中的5个字符提取出来并拼接成字符串。
s[1]+s[3]+s[5]+s[7]+s[9]
4、判断"yuan"是否在[123,(1,"yuan"),{"yuan":"handsome"},"yuanhao"],如何判断以及对应结果?
答 m=[123,(1,"yuan"),{"yuan":"handsome"},"yuanhao"]
n="yuan"
for i in m:
if i == n:
print(i)
输出结果为: 空值
5、l=[1,2,3]
l2=l.insert(3,"hello")
print(l2)
执行结果并解释为什么?
答: 执行结果报错,因为列表下标是从0开始的,l列表的元素下标有0,1,2,没有下边为3的元素
6、 a=[1,2,[3,"hello"],{"egon":"aigan"}]
b=a[:]

a[0]=5
a[2][0]=666

print(a)
print(b)
#计算结果以及为什么?
[5,2,[666,"hello"],{"egon":"aigan"}]
[1,2,[3,"hello"],{"egon":"aigan"}]
7 使用文件读取,找出文件中最长的行的长度(用一行代码解决)?
print(max(len(line.strip())for line in f))
8 def add(s, x):
return s + x

def generator():
for i in range(4):
yield i

base = generator()
for n in [1, 11]:
base = (add(i, n) for i in base)

print list(base)

9
hello.py (gbk方式保存):
#coding:GBK
print(“老男孩”)

如果用py2,py3下在cmd下运行回报错吗?为什么并提出解决方案? (编码)
py2不会报错,因为Windows中cmd默认字符编码就是gbk
py3中不会报错,因为Windows中cmd默认字符编码是gbk
10 通过函数化编程实现5的阶乘
from functools import reduce
print(reduce(lambda x,y:x*y,[1,2,3,4,5]))
11 打印如下图案:


***
*****
*******
*****
***
*

12
def outer():
count = 10
def inner():
count = 20
print(count)
inner()
print(count)
outer()

(1)分析运行结果?
20,10,这是一个嵌套函数,名称空间查找的顺序是:局部名称空间->全局名称空间->内置名称空间
(2)如何让两个打印都是20
把count的行去掉,然后把count = 20这一行放在def outer(): 这一行的上一行。理由是count的值都可以从全局找。
13 输入一个年份,判断是否是闰年?
year=int(input("请输入年份:"))
if year % 4 == 0 and year % 400 == 0 and year % 100 != 0:
print("输入的年份是闰年")
else:
print("输入的年份不是闰年")
14 任意输入三个数,判断大小?
a=1
i=[]
while a<=3:
j = int(input("请输入数字:"))
i.append(j)
a += 1
print(i)
print(max(i))
15 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222
,几个数相加以及a的值由键盘控制。
a=int(input("请输入一个数字:"))
def f(n):
if n==1:
return a
elif n==2:
return 10*a+a
else:
return f(n-1)+10**(n-1)
if __name__ == "__main__":
f=f(10)
print(f)
16 f=open("a")

while 1:
choice=input("是否显示:[Y/N]:")
if choice.upper()=="Y":
for i in f:
print(i)
else:
break

请问程序有无bug,怎么解决?
答:有bug,f=open("a")改成如下代码
with open("a","r") as f:
f.read()
下面的代码不变
17

def foo():
print('hello foo')
return()
def bar():
print('hello bar')

(1)为这些基础函数加一个装饰器,执行对应函数内容后,将当前时间写入一个文件做一个日志记录。
import time
def timmer(func):
def wrapper():
start_time=time.time()
func()
stop_time=time.time()
m=print("The run time is %s",stop_time-start_time)
with open("n.log", "a+") as f:
f.write("The run time is %s" %(stop_time-start_time))
return wrapper

@timmer
def foo():
print('hello foo')
time.sleep(3)
return()
@timmer
def bar():
print('hello bar')
time.sleep(3)
(2)改成参数装饰器,即可以根据调用时传的参数决定是否记录时间,比如@logger(True)
import time
def timmer(func):
def wrapper(*args,**kwargs):
start_time=time.time()
func(*args,**kwargs)
stop_time=time.time()
m=print("The run time is %s",stop_time-start_time)
with open("n.log", "a+") as f:
f.write("The run time is %s" %(stop_time-start_time))
return wrapper

@timmer
def foo():
print('hello foo')
time.sleep(3)
return()
@timmer
def bar():
print('hello bar')
time.sleep(3)
18 三次登陆锁定:要求一个用户名密码输入密码错误次数超过三次锁定?
i=0
while i<3:
name=input("请输入你的名字: ")
password=input("请输入你的密码: ")
if name=='bing'and password=='12345':
print("bing login success,welcome bing")
break
else:
print("用户名或密码错误!")
i+=1
while i>=3:
print("已经被锁定")
with open('./jilu.txt','w+') as f:
f.write("name:"+name+'\n password:'+password)

python考试的更多相关文章

  1. 二级python考试大纲以及考试指导复习方案

    二级python考试大纲与复习指导 本人也是在备考二级py 可能理解不对的地方请指正 参考网络,侵权删除 考纲解读→ 一.考试介绍 1.1考试人群 ​ 全国计算机等级考试(python语言程序设计(二 ...

  2. Python考试_第一次

    python基础数据类型考试题 考试时间:两个半小时 满分100分(80分以上包含80分及格) 一,基础题. 1. 简述变量命名规范(3分) 答:(1) 变量为数字,字母以及下划线的任意组合,且不能以 ...

  3. Python考试_第三次

    - python 全栈11期月考题 一 基础知识:(70分) 1.文件操作有哪些模式?请简述各模式的作用(2分) 2.详细说明tuple.list.dict的用法,以及它们的特点(3分) 3.解释生成 ...

  4. Python 考试练习

    1.算法复杂度分为:时间复杂度和空间复杂度 一个算法的优劣主要从算法的执行时间和所需要占用的存储空间两个方面衡量. 时间复杂度:是指执行算法所需要的计算工作量,也即算法的执行时间  (注意:是算法的执 ...

  5. python 考试补缺

    十六进制: >>> a=100 >>> hex(a) '0x64' 八进制: >>> a=100 >>> oct(a) '0o1 ...

  6. Python全国二级等级考试(2019)

    一.前言 2018年9月随着全国计算机等级考试科目中加入“二级Python”,也确立了Python在国内的地位,猪哥相信Python语言势必会像PS那般普及.不久的将来,谁会Python谁就能获得女神 ...

  7. Python全国二级等级考试(2019)

    一.前言 2018年9月随着全国计算机等级考试科目中加入“二级Python”,也确立了Python在国内的地位,猪哥相信Python语言势必会像PS那般普及.不久的将来,谁会Python谁就能获得女神 ...

  8. Python 练习汇总

    1. Python练习_Python初识_day1 2. Python练习_Python初识_day2 3. Python练习_初识数据类型_day3 4. Python练习_数据类型_day4 5. ...

  9. 库函数wordcloud安装的问题

    在对python有了一定的了解之后就对python的第三方库产生了十分浓厚的兴趣,因为python的很多功能都是要依靠第三方库函数来实现的,而且在计算机二级刚刚加入的python考试中也有对第三方库的 ...

随机推荐

  1. eclipse导入项目,项目名出现红叉的情况(修改版)

    转至:http://blog.csdn.net/niu_hao/article/details/17440247 今天用eclipse导入同事发给我的一个项目之后,项目名称上面出现红叉,但是其他地方都 ...

  2. MariaDB复制架构中应该注意的问题

    一.复制架构中应该注意的问题: 1.限制从服务器只读 在从服务器上设置read_only=ON,此限制对拥有SUPPER权限的用户均无效: 阻止所有用户(在从服务器执行一下命令并保持此线程,也就是执行 ...

  3. C/C++中浮点数输出格式问题

    在C语言中,浮点数的输出格式有三种:%g, %f, %e 首先要说的是%e是采用科学计数法来显示. %g与后两者有一个重要的差别,就是设置输出精度的时候,(C中默认浮点输出精度是6),%g认为,包括整 ...

  4. Python Parameter Passing Note

    我刚刚开始学习Python, Python中的参数传递总是让我很困惑.我写了4个简单的Demo,帮助我理解Python的参数传递,希望对大家都能有所帮助. 0: def change(x): x = ...

  5. Linux定时器 使用

    1.alarm alarm()执行后,进程将继续执行,在后期(alarm以后)的执行过程中将会在seconds秒后收到信号SIGALRM并执行其处理函数. #include <stdio.h&g ...

  6. 解决 hybird 应用中重复获取 WebView,导致页面元素无法识别的问题

    转载地址:http://blog.csdn.net/testman930/article/details/50799532 问题描述 在测APP的业务流,WebView和Native模式耦合在一起.例 ...

  7. LifecycleProcessor not initialized - call 'refresh' before invoking lifecycle methods via the context: --异常记录

    升级了JDK之后,启动应用,直接抛出此异常.网上搜罗半天,没有正确的解决方案. 然后想到了是“升级了JDK”,重新检查所有JDK相关的配置的地方,在Debug Configurations里找到启动时 ...

  8. ununtu16.04+python3+selenium+firefox环境搭建

    一.初始配置: 1.安装完系统并配置好地址及DNS.2.设置root密码: sudo passwd root 3.更改云源: sudo cp /etc/apt/sources.list /etc/ap ...

  9. 单例模式及getInstance()的用法

    一般在单例模式下使用.getInstance()创建对象:但并不是所有有私有构造方法,对外通过getInstance方法提供 实例的情况就是单例模式. 注:单例模式:一个类有且只有一个实例.1,一个私 ...

  10. 单元测试JUnit 4

    介绍   JUnit 4.x 是利用了 Java 5 的特性(Annotation)的优势,使得测试比起 3.x 版本更加的方便简单,JUnit 4.x 不是旧版本的简单升级,它是一个全新的框架,整个 ...