Python语言程序设计问答题
1、【题目】请简述Python中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。
答案:
类对象与实例对象的区别: 在一个类中, 类对象只有一个, 但实例对象可以有多个。类对象在定义类后便自然存在,而实例对象需要人为创建。
类属性与实例属性的区别: 实例属性是实例对象所特有的。 类对象并不拥有实例属性,所以不能通过类对象来访问实例属性。 实例属性也只能用实例对象来访问,不能用类对象来访问实例属性。 类属性即可用类对象访问, 也可用实例对象访问。请简述 Python 中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。
解析:
暂无解析
1、【题目】Python 语言有哪些语句?
答案:
if 语句、 while 语句、 for 语句
解析:
暂无解析
1、【题目】简述字典和集合的异同。并简述它们各自的用途。
答案:
字典和集合的数据元素之间没有任何确定的顺序关系,属于无序的数据集合体,因此不能像序列那样通过位置索引来访问数据元素。
作为一种复合数据类型, 字典和集合之间的主要区别在于它们的操作, 字典主要关心其元素的检索、插入和删除,集合主要考虑集合之间的并、交和差操作。
解析:
暂无解析
1、【题目】简述字典和集合的异同。并简述它们各自的用途。
答案:
字典和集合的数据元素之间没有任何确定的顺序关系,属于无序的数据集合体,因此不能像序列那样通过位置索引来访问数据元素。
作为一种复合数据类型, 字典和集合之间的主要区别在于它们的操作, 字典主要关心其元素的检索、插入和删除,集合主要考虑集合之间的并、交和差操作。
解析:
暂无解析
1、【题目】Python语言有哪些数据类型?
答案:
数值类型(整型、浮点型、复数型) 、布尔型、字符串、列表、元组、字典和集合等
解析:
暂无解析
1、【题目】请分别说明Python中正则表达式、lambda函数、装饰器、异常处理、断言处理各自的用途。
答案:
正则表达式:
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个 “规则字符串 ”,这个“规则字符串 ”用来表达对字符串的一种过滤逻辑。
lambda函数:是指没有函数名的简单函数,只可以包含一个表达式,不允许包含其他复杂的语句, 表达式的结果是函数的返回值。 用匿名函数有个好处, 因为函数没有名字,所以不必担心函数名冲突。
装饰器: 可简单地理解为一个函数,这是一个用来包装函数的函数,经常用于为已经存在的函数添加额外的功能。 当多个函数有重复代码时, 可以将此部分代码单独拿出来整理成一个装饰器,然后对每个函数调用该装饰器,这样可以实现代码的复用,而且可以让原来的函数更轻便。 当需要为多个己经写好的函数添加一个共同功能, 例如检查参数的合法性时, 就可以单独写一个检查合法性的装饰器, 然后在每个需要检查参数合法性的函数处调用即可,而不用去每个函数内部修改。
断言处理
解析:
暂无解析
1、【题目】请分别举例说明遍历列表、元组、字典和集合中各元素的方法。
答案:
列表:列表与 for 循环语句配合使用,可实现对列表各个元素的遍历。
for i in list: print ("序号: %s 值:%s" % (list.index(i) + 1, i)) 元组:元组与 for 循环语句配合使用,可实现对元组各个元素的遍历。示例同列表。
字典:
遍历字典的关键字: d.keys():返回一个包含字典所有关键字的列表,所以对字典关键字的遍历转换为对列表的遍历。
遍历字典的值: d.values():返回一个包含字典所有值的列表,所以对字典值的遍历转换为对列表的遍历。
遍历字典的元素: d.items():返回一个包含所有 (关键字 ,值)元组的列表,所以对字典元素的遍历转换为对列表的遍历。
集合:集合与 for 循环语句配合使用,可实现对集合各个元素的遍历。
解析:
暂无解析
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语言编写一个简易的系统登录程序。
答案:
import tkinter.messagebox
import tkinter
my_window = tkinter.Tk() # 生成 my_window 主窗口
my_window.title('welcome my_window') # 设置窗口标题
cv = tkinter.Canvas(my_window,bg='lightcyan') # 用画布设置窗口的颜色
cv.pack()
my_window.geometry('200x150') # 设置窗口大小
# label 标签(用户名和密码的变量)
varName = tkinter.StringVar() # 文字变量储存器器
varName.set('admin')
varPwd = tkinter.StringVar()
varPwd.set('123456')
# 创建账户的标签
labname = tkinter.Label(my_window,text=' 用户名 ',justify=tkinter.RIGHT,bg='pink',width=80)
labname.place(x=10,y=5,width=80,height=20)
# 创建文本框,同事设置关联变量
enterName = tkinter.Entry(my_window,width=80,textvariable=varName)
enterName.place(x=100,y=5,width=80,height=20)
# 创建密码的标签 和文本框
labPwd = tkinter.Label(my_window,text=' 密码',justify=tkinter.RIGHT,bg='pink',width=80)
labPwd.place(x=10,y=30,width=80,height=20)
enterPwd = tkinter.Entry(my_window,show='*',width=80,textvariable=varPwd)
enterPwd.place(x=100,y=30,width=80,height=20)
# 登录按钮事件处理函数
def login():
Name = enterName.get()
Pwd = enterPwd.get()
if Name =='admin' and Pwd == '123456':
tkinter.messagebox.showinfo(title='Python tkinter',message=' 登录成功!!')
else:
tkinter.messagebox.showerror(title='python tkinter',message=' 登录失败 ')
# 创建按钮组件,并且设置按钮事件的处理函数
buttonOK = tkinter.Button(my_window,text = 'login',background='lightskyblue',command =
login())
buttonOK.place(x=30 , y=70 , width=50,height=20)
# 取消按钮的时间处理函数
def cancel():
# 清空用户输入的用户名和密码
varName.set('')
varPwd.set('')
buttonCancel =
tkinter.Button(my_window,text='Cancel',background='lightgray',command=cancel())
buttonCancel.place(x=100,y=70,width=50,height=20)
# 启动消息循环
my_window.mainloop()
解析:
暂无解析