等级考试Python语言程序设计问答题
1、【题目】请分别举例说明遍历列表、元组、字典和集合中各元素的方法。
答案:
列表:列表与 for 循环语句配合使用,可实现对列表各个元素的遍历。
for i in list: print ("序号: %s 值:%s" % (list.index(i) + 1, i)) 元组:元组与 for 循环语句配合使用,可实现对元组各个元素的遍历。示例同列表。
字典:
遍历字典的关键字: d.keys():返回一个包含字典所有关键字的列表,所以对字典关键字的遍历转换为对列表的遍历。
遍历字典的值: d.values():返回一个包含字典所有值的列表,所以对字典值的遍历转换为对列表的遍历。
遍历字典的元素: d.items():返回一个包含所有 (关键字 ,值)元组的列表,所以对字典元素的遍历转换为对列表的遍历。
集合:集合与 for 循环语句配合使用,可实现对集合各个元素的遍历。
解析:
暂无解析
1、【题目】请简述Python中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。
答案:
类对象与实例对象的区别: 在一个类中, 类对象只有一个, 但实例对象可以有多个。类对象在定义类后便自然存在,而实例对象需要人为创建。
类属性与实例属性的区别: 实例属性是实例对象所特有的。 类对象并不拥有实例属性,所以不能通过类对象来访问实例属性。 实例属性也只能用实例对象来访问,不能用类对象来访问实例属性。 类属性即可用类对象访问, 也可用实例对象访问。请简述 Python 中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。
解析:
暂无解析
1、【题目】请用Python语言编写一个简易的通讯录管理程序。
答案:
mydic={}
while True:
print("="*7," 通讯录管理系统 ","="*7)
print("1.增加姓名和手机 ")
print("2.删除姓名 ")
print("3.修改手机号 ")
print("4.查询所有用户 ")
print("5.根据姓名查找手机号 ")
print("6.退出")
print("="*29)
a=input("请选择要执行的项目: ")
if a=="1":
name=input("请输入联系人姓名: ")
tel=input("请输入手机号: ")
if tel.isdigit() and len(tel)==11:
mydic[name]=tel
print("当前手机内联系人: ",mydic)
else:
print("输入有误 ")
elif a=="2":
name=input("请输入要删除的姓名: ")
tel=mydic.pop(name)
print("已删除: "+name+tel)
print("当前手机联系人: ",mydic)
elif a=="3":
name=input("请输入要修改的手机号姓名: ")
tel=input("请输入新的手机号: ")
mydic[name]=tel
print("修改成功! ")
print("当前手机内联系人: ",mydic)
elif a=="4":
print("当前手机内联系人: ",mydic)
elif a=="5":
name=input("请输入要查询的联系人姓名: ")
print(name,mydic[name])
print("")
elif a=="6":
print("感谢使用通讯录系统 ")
break
else:
print("输入有误 ")
解析:
暂无解析
1、【题目】简述元组与列表的异同。并简述它们各自的用途。
答案:
Python元组和列表一样, 都是有序序列, 在很多情况下可以相互替换, 很多操作也类似,但它们也有区别:元组是不可变的序列类型,元组能对不需要改变的数据进行写保护,使数据更安全。列表是可变的序列类型,可以添加、删除或搜索列表中的元素。元组使用小括号定义用逗号分隔的元素, 而列表中的元素应该包括在中括号中。虽然元组使用小括号,但访问元组元素时,要使用中括号按索引或分片来获得对应元素的值。元组可以在字典中作为关键字使用,而列表不能作为字典关键字使用,因为列表不是不可改变的。只要不尝试修改元组,那么大多数情况下把它们作为列表来进行操作用途:列表可被用于保存多个互相独立对象的数据集合元组用于描述一个不会改变的事务的多个属性
解析:
暂无解析
1、【题目】请用 Python 语言编写一个简易的计算器程序。
答案:
from tkinter import *
reset=True
def buttonCallBack(event):
global label
global reset
num=event.widget['text']
if num=='C':
label['text']="0"
return
if num in "=":
label['text']=str(eval(label['text']))
reset=True
return
s=label['text']
if s=='0' or reset==True:
s=""
reset=False
label['text']=s+num #主窗口
root=Tk() root.wm_title(" 计算器 ") #显示栏 1 label=Label(root,text="0",background="white",anchor="e")
label['width']=35
label['height']=2
label.grid(row=1,columnspan=4,sticky=W) #按钮
showText="789/456*123-0.C+"
for i in range(4):
for j in range(4):
b=Button(root,text=showText[i*4+j],width=7)
b.grid(row=i+2,column=j)
b.bind("",buttonCallBack) showText="()"
for i in range(2):www.jb51.net
b=Button(root,text=showText[i],width=7)
b.grid(row=6,column=2+i)
b.bind("",buttonCallBack) b=Button(root,text="=")
b.grid(row=6,columnspan=2,sticky="we")
b.bind("",buttonCallBack)
root.mainloop()
解析:
暂无解析
1、【题目】请举例说明Python面向对象的多态性(例如函数重载、运算符重载)是如何实现的?
答案:
父类和多个子类中都有同名的方法, 虽然方法同名, 但该方法在不同类中的行为是不同的。当向一个对象发送消息(即调用该方法)时,所得结果取决于是哪一个对象接收。多个不同的对象都支持相同的消息, 但各对象响应消息的行为不同,这种能力就是多态性的体现, 即同一操作在不同的上下文环境中具有不同形态的意思。
解析:
暂无解析
1、【题目】简述使用 tkinter 模块创建一个图形用户界面应用程序的主要步骤。
答案:
1.导入 Tkinter 模块
2.创建一个顶层窗口对象,来容纳你的整个 GUI 程序
3.在你的顶层窗口对象上(或者其中)创建所有的 GUI 模块(以及功能)
4.把这些 GUI 模块与底层代码相连接
5.进入主事件循环
解析:
暂无解析
1、【题目】在Python中如何实现栈和队列?请举例说明。
答案:
class Stack(object):
def __init__(self):
self.stack=[]
def isEmpty(self):
return self.stack==[]
def push(self,item):
self.stack.append(item)
def pop(self):
if self.isEmpty():
raise IndexError,'pop from empty stack'
return self.stack.pop()
def peek(self):
return self.stack[-1]
def size(self):
return len(self.stack)
class Queue:
def __init__(self, head=None):
self.storage = [head]
def enqueue(self, new_element):
self.storage.append(new_element)
def peek(self):
return self.storage[0]
def dequeue(self):
return self.storage.pop(0)
解析:
暂无解析
1、【题目】Python语言有哪些数据类型?
答案:
数值类型(整型、浮点型、复数型) 、布尔型、字符串、列表、元组、字典和集合等
解析:
暂无解析
1、【题目】简述字典和集合的异同。并简述它们各自的用途。
答案:
字典和集合的数据元素之间没有任何确定的顺序关系,属于无序的数据集合体,因此不能像序列那样通过位置索引来访问数据元素。
作为一种复合数据类型, 字典和集合之间的主要区别在于它们的操作, 字典主要关心其元素的检索、插入和删除,集合主要考虑集合之间的并、交和差操作。
解析:
暂无解析
1、【题目】Python 语言有哪些运算符?请列表说明它们各自的运算优先级。
答案:
算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符、成员运算符、身份运算符等
解析:
暂无解析
1、【题目】请分别简述利用 thinter 模块、turtle 模块和 graphics 模块绘图时各自的绘图步骤。
答案:
thinter 模块:·
1.导入 Tkinter 模块
2.创建控件
3.指定这个控件的 master, 即这个控件属于哪一个
4.告诉 GM(geometry manager) 有一个控件产生了。
turtle 模块:
1.引入 turtle 模块
2.创建画布。调用 turtle 中的 Pen函数。
3.移动海龟。
4.提起画笔
graphics 模块:
1.导入 graphics模块包
2.使用 GraphWin
3.调用 Point()类,设置 X 坐标和 Y 坐标
4.调用 draw()方法,绘制
解析:
暂无解析
1、【题目】Python 语言有哪些数据类型?
答案:
数值类型(整型、浮点型、复数型) 、布尔型、字符串、列表、元组、字典和集合等
解析:
暂无解析
1、【题目】在 Python 中如何实现二维数组、结构体、结构体数组(二维表) 、链表?请举例说明。
答案:
二维数组:列表中嵌套列表
matrix=[[0,0,0],[0,0,0],[0,0,0],[0,0,0]]
结构体:使用字典数据类型实现结构体
当列表的元素也是一个列表时,列表就表示二维矩阵或锯齿阵。
解析:
暂无解析