欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    Python语言程序设计.doc

    • 资源ID:33509770       资源大小:154KB        全文页数:10页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Python语言程序设计.doc

    -作者xxxx-日期xxxxPython语言程序设计【精品文档】Python语言程序设计平时作业姓 名:贺 涛学 号:21. Python语言有哪些数据类型?数值类型(整型、浮点型、复数型)、布尔型、字符串、列表、元组、字典和集合等2. Python语言有哪些运算符?请列表说明它们各自的运算优先级。算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符、成员运算符、身份运算符等3. Python语言有哪些语句?if语句、while语句、for语句4. 简述元组与列表的异同。并简述它们各自的用途。Python元组和列表一样,都是有序序列,在很多情况下可以相互替换,很多操作也类似,但它们也有区别:l 元组是不可变的序列类型,元组能对不需要改变的数据进行写保护,使数据更安全。列表是可变的序列类型,可以添加、删除或搜索列表中的元素。l 元组使用小括号定义用逗号分隔的元素,而列表中的元素应该包括在中括号中。虽然元组使用小括号,但访问元组元素时,要使用中括号按索引或分片来获得对应元素的值。l 元组可以在字典中作为关键字使用,而列表不能作为字典关键字使用,因为列表不是不可改变的。l 只要不尝试修改元组,那么大多数情况下把它们作为列表来进行操作用途:l 列表可被用于保存多个互相独立对象的数据集合l 元组用于描述一个不会改变的事务的多个属性5. 简述字典和集合的异同。并简述它们各自的用途。字典和集合的数据元素之间没有任何确定的顺序关系,属于无序的数据集合体,因此不能像序列那样通过位置索引来访问数据元素。作为一种复合数据类型,字典和集合之间的主要区别在于它们的操作,字典主要关心其元素的检索、插入和删除,集合主要考虑集合之间的并、交和差操作。6. 请分别举例说明遍历列表、元组、字典和集合中各元素的方法。l 列表:列表与for循环语句配合使用,可实现对列表各个元素的遍历。for i in list:print ("序号:%s 值:%s" % (list.index(i) + 1, i)l 元组:元组与for循环语句配合使用,可实现对元组各个元素的遍历。示例同列表。l 字典:n 遍历字典的关键字:d.keys():返回一个包含字典所有关键字的列表,所以对字典关键字的遍历转换为对列表的遍历。n 遍历字典的值:d.values():返回一个包含字典所有值的列表,所以对字典值的遍历转换为对列表的遍历。n 遍历字典的元素:d.items():返回一个包含所有(关键字,值)元组的列表,所以对字典元素的遍历转换为对列表的遍历。l 集合:集合与for循环语句配合使用,可实现对集合各个元素的遍历。7. 在Python中如何实现二维数组、结构体、结构体数组(二维表)、链表?请举例说明。二维数组:列表中嵌套列表matrix=0,0,0,0,0,0,0,0,0,0,0,0结构体:使用字典数据类型实现结构体当列表的元素也是一个列表时,列表就表示二维矩阵或锯齿阵。8. 在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-1def size(self):return len(self.stack)class Queue:def _init_(self, head=None):self.storage = headdef enqueue(self, new_element):self.storage.append(new_element)def peek(self):return self.storage0 def dequeue(self):return self.storage.pop(0)9. 请分别说明Python中正则表达式、lambda函数、装饰器、异常处理、断言处理各自的用途。正则表达式:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。lambda函数:是指没有函数名的简单函数,只可以包含一个表达式,不允许包含其他复杂的语句,表达式的结果是函数的返回值。用匿名函数有个好处,因为函数没有名字,所以不必担心函数名冲突。装饰器:可简单地理解为一个函数,这是一个用来包装函数的函数,经常用于为已经存在的函数添加额外的功能。当多个函数有重复代码时,可以将此部分代码单独拿出来整理成一个装饰器,然后对每个函数调用该装饰器,这样可以实现代码的复用,而且可以让原来的函数更轻便。当需要为多个己经写好的函数添加一个共同功能,例如检查参数的合法性时,就可以单独写一个检查合法性的装饰器,然后在每个需要检查参数合法性的函数处调用即可,而不用去每个函数内部修改。断言处理:10. 请分别举例说明,在Python中函数的实在参数与形式参数间单向和双向传递数据是如何实现的。函数的位置参数与关键字参数有何区别?在Python中,实参向形参传送数据的方式是“值传递”,即“拷贝”或“复制”。实参的值传给形参,是对象间整体赋值,是一种单向传递方式,不能由形参传回给实参。函数体传入的参数,为函数体外变量引用的副本。在函数体中改变变量指向的堆中的值,对函数外变量有效。在函数体中改变变量的引用,对函数外变量无效。关键字参数和位置参数的区别:函数调用时的参数通常采用按位置匹配的方式,即实参按顺序传递给相应位置的形参。实参的个数应与形参个数必须完全相等。在函数调用中使用关键字参数,是指通过形式参数的名称来指示为哪个形参传递什么值,这可以跳过某些参数或脱离参数的顺序。11. 请简述Python中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。类对象与实例对象的区别:在一个类中,类对象只有一个,但实例对象可以有多个。类对象在定义类后便自然存在,而实例对象需要人为创建。类属性与实例属性的区别:实例属性是实例对象所特有的。类对象并不拥有实例属性,所以不能通过类对象来访问实例属性。实例属性也只能用实例对象来访问,不能用类对象来访问实例属性。类属性即可用类对象访问,也可用实例对象访问。用途:12. 请简述Python中类方法、实例方法、静态方法各自的区别?并简述它们各自的用途。实例方法只能用实例对象来调用,不能用类对象来调用实例方法。类方法:类方法是类对象所拥有的方法,类方法的第一个参数必须是类对象,可以通过实例对象和类对象去访问类方法,类方法可以对类属性进行修改。实例方法:实例方法是类中最常定义的成员方法,它至少有一个参数并且必须以实例对象作为其第一个参数,在类外实例方法只能通过实例对象去调用,不能通过其他方式去调用。静态方法:静态方法需要通过修饰器“staticmethod”来进行修饰,静态方法不需要多定义参数。静态方法中不需要额外定义参数,因此如果在静态方法中引用类属性,则必须通过类对象来引用。13. 请举例说明Python面向对象的多态性(例如函数重载、运算符重载)是如何实现的?父类和多个子类中都有同名的方法,虽然方法同名,但该方法在不同类中的行为是不同的。当向一个对象发送消息(即调用该方法)时,所得结果取决于是哪一个对象接收。多个不同的对象都支持相同的消息,但各对象响应消息的行为不同,这种能力就是多态性的体现,即同一操作在不同的上下文环境中具有不同形态的意思。14. 请分别简述利用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. 使用GraphWin3. 调用Point()类,设置X坐标和Y坐标4. 调用draw()方法,绘制15. 简述使用tkinter模块创建一个图形用户界面应用程序的主要步骤。1. 导入Tkinter模块2. 创建一个顶层窗口对象,来容纳你的整个GUI程序3. 在你的顶层窗口对象上(或者其中)创建所有的GUI模块(以及功能)4. 把这些GUI模块与底层代码相连接5. 进入主事件循环16. 在tkinter模块中事件绑定方式有哪几种?并简述它们各自的用途。widget.bind(event,handler)使用frame的bind方法将一个callback方法绑定到一个事件绑定到widget instance 使用bind方法绑定到widget的toplevel windows,顶层窗口,也是用bind绑定到widget class,使用bind_class17. 请用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()18. 请用Python语言编写一个简易的计算器程序。from tkinter import *reset=Truedef 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("计算器")#显示栏1label=Label(root,text="0",background="white",anchor="e")label'width'=35label'height'=2label.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=showTexti*4+j,width=7)    b.grid(row=i+2,column=j)    b.bind("<button-1>",buttonCallBack)showText="()"for i in   b=Button(root,text=showTexti,width=7)  b.grid(row=6,column=2+i)  b.bind("<button-1>",buttonCallBack)b=Button(root,text="=")b.grid(row=6,columnspan=2,sticky="we")b.bind("<button-1>",buttonCallBack)root.mainloop()</button-1></button-1></button-1>19. 请用Python语言编写一个简易的猜数字游戏程序。import random answer = random.randint(1,10) print('猜数游戏')num=input('请输入你猜测的数字n')guess=int(num)n=0while n<2: if guess = answer and n=0: print('么么哒。对啦') print('厉害了一次就对了') break if guess < answer: print('不对哦,太小了') elif guess > answer : print('不对哦,太大了') elif guess=answer : print('么么哒。对啦') num=input('请你重新输入n') guess=int(num) n=n+1 if n=1 and guess=answer: print('可以哦,第二次就对了') break elif n=2 and guess =answer: print('还行,终于猜出来了') break elif n=2 and guess !=answer : print('不行哦,三次都不对') break print('游戏结束')20. 请用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: mydicname=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("请输入新的手机号:") mydicname=tel print("修改成功!") print("当前手机内联系人:",mydic) elif a="4": print("当前手机内联系人:",mydic) elif a="5": name=input("请输入要查询的联系人姓名:") print(name,mydicname) print("") elif a="6": print("感谢使用通讯录系统") break else: print("输入有误")【精品文档】

    注意事项

    本文(Python语言程序设计.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开