ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:21.66KB ,
资源ID:5529575      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5529575.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Python入门经典实例.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Python入门经典实例.docx

1、Python入门经典实例1 你好#打开新窗口,输入:#!/usr/bin/python#-*-coding:utf8-*-s1=input(Inputyourname:)print(你好,%s%s1)知识点:*input(某字符串)函数:显示某字符串,并等待用户输入.*print()函数:如何打印.*如何应用中文 *如何用多行注释2 字符串和数字但有趣的是,在javascript里我们会理想当然的将字符串和数字连接,因为是动态语言嘛.但在Python里有点诡异,如下:#!/usr/bin/pythona=2b=testc=a+b运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数

2、进行转换#!/usr/bin/python#运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换a=2b=testc=str(a)+bd=1111e=a+int(d)#Howtoprintmultiplyvaluesprint(cis%s,eis%i%(c,e)知识点:*用int和str函数将字符串和数字进行转换*打印以#开头,而不是习惯的/*打印多个参数的方式3 列表#!/usr/bin/python#-*-coding:utf8-*-#列表类似Javascript的数组,方便易用#定义元组word=a,b,c,d,e,f,g#如何通过索引访问元组里的元素a=word2

3、print(ais:+a)b=word1:3print(bis:)print(b)#index1and2elementsofword.c=word:2print(cis:)print(c)#index0and1elementsofword.d=word0:print(dis:)print(d)#Allelementsofword.#元组可以合并e=word:2+word2:print(eis:)print(e)#Allelementsofword.f=word-1print(fis:)print(f)#Thelastelementsofword.g=word-4:-2print(gis:)pr

4、int(g)#index3and4elementsofword.h=word-2:print(his:)print(h)#Thelasttwoelements.i=word:-2print(iis:)print(i)#Everythingexceptthelasttwocharactersl=len(word)print(Lengthofwordis:+str(l)print(Addsnewelement)word.append(h)print(word)#删除元素delword0print(word)delword1:3print(word)知识点:*列表长度是动态的,可任意添加删除元素.*

5、用索引可以很方便访问元素,甚至返回一个子列表*更多方法请参考Python的文档4 字典#!/usr/bin/pythonx=a:aaa,b:bbb,c:12print(xa)print(xb)print(xc)forkeyinx:print(Keyis%sandvalueis%s%(key,xkey)知识点:*将他当Java的Map来用即可.5 字符串比起C/C+,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧.#!/usr/bin/pythonword=abcdefga=word2print(ais:+a)b=word1:3print(bis:+b)#index1and2

6、elementsofword.c=word:2print(cis:+c)#index0and1elementsofword.d=word0:print(dis:+d)#Allelementsofword.e=word:2+word2:print(eis:+e)#Allelementsofword.f=word-1print(fis:+f)#Thelastelementsofword.g=word-4:-2print(gis:+g)#index3and4elementsofword.h=word-2:print(his:+h)#Thelasttwoelements.i=word:-2print(

7、iis:+i)#Everythingexceptthelasttwocharactersl=len(word)print(Lengthofwordis:+str(l)中文和英文的字符串长度是否一样?#!/usr/bin/python#-*-coding:utf8-*-s=input(输入你的中文名,按回车继续);print(你的名字是:+s)l=len(s)print(你中文名字的长度是:+str(l)知识点:类似Java,在python3里所有字符串都是unicode,所以长度一致.6 条件和循环语句#!/usr/bin/python#条件和循环语句x=int(input(Pleaseent

8、eraninteger:)ifx0:x=0print(Negativechangedtozero)elifx=0:print(Zero)else:print(More)#LoopsLista=cat,window,defenestrateforxina:print(x,len(x)#知识点:#*条件和循环语句#*如何得到控制台输入7 函数#!/usr/bin/python#-*-coding:utf8-*-defsum(a,b):returna+bfunc=sumr=func(5,6)print(r)#提供默认值defadd(a,b=2):returna+br=add(1)print(r)r=

9、add(1,5)print(r)一个好用的函数#!/usr/bin/python#-*-coding:utf8-*-#Therange()functiona=range(1,10)foriina:print(i)a=range(-2,-11,-3)#The3rdparameterstandsforstepforiina:print(i)知识点:Python 不用来控制程序结构,他强迫你用缩进来写程序,使代码清晰. 定义函数方便简单 方便好用的range函数8 异常处理#!/usr/bin/pythons=input(Inputyourage:)ifs=:raiseException(Input

10、mustnobeempty.)try:i=int(s)exceptExceptionaserr:print(err)finally:#Cleanupactionprint(Goodbye!)9 文件处理对比Java,python的文本处理再次让人感动#!/usr/bin/pythonspath=D:/download/baa.txtf=open(spath,w)#Opensfileforwriting.Createsthisfiledoesntexist.f.write(Firstline1.n)f.writelines(Firstline2.)f.close()f=open(spath,r)

11、#Opensfileforreadingforlineinf:print(每一行的数据是:%s%line)f.close()知识点:open的参数:r表示读,w写数据,在写之前先清空文件内容,a打开并附加内容. 打开文件之后记得关闭10 类和继承classBase:def_init_(self):self.data=defadd(self,x):self.data.append(x)defaddtwice(self,x):self.add(x)self.add(x)#ChildextendsBaseclassChild(Base):defplus(self,a,b):returna+boChi

12、ld=Child()oChild.add(str1)print(oChild.data)print(oChild.plus(2,3)知识点:*self:类似Java的this参数11 包机制每一个.py文件称为一个module,module之间可以互相导入.请参看以下例子:# a.pydefadd_func(a,b):returna+b#b.pyfromaimportadd_func#Alsocanbe:importaprint(Importadd_funcfrommodulea)print(Resultof1plus2is:)print(add_func(1,2)#Ifusingimport

13、a,thenhereshouldbea.add_funcmodule可以定义在包里面.Python定义包的方式稍微有点古怪,假设我们有一个parent文件夹,该文件夹有一个child子文件夹.child中有一个module a.py . 如何让Python知道这个文件层次结构?很简单,每个目录都放一个名为_init_.py 的文件.该文件内容可以为空.这个层次结构如下所示:parent-_init_.py-child-_init_.py-a.pyb.py那么Python如何找到我们定义的module?在标准包sys中,path属性记录了Python的包路径.你可以将之打印出来:importsy

14、sprint(sys.path)通常我们可以将module的包路径放到环境变量PYTHONPATH中,该环境变量会自动添加到sys.path属性.另一种方便的方法是编程中直接指定我们的module路径到sys.path 中:importsysimportossys.path.append(os.getcwd()+parentchild)print(sys.path)fromaimportadd_funcprint(sys.path)print(Importadd_funcfrommodulea)print(Resultof1plus2is:)print(add_func(1,2)知识点:如何定

15、义模块和包 如何将模块路径添加到系统路径,以便python找到它们 如何得到当前路径12 内建帮助手册对比C+,Java的突出进步是内建Javadoc机制,程序员可以通过阅读Javadoc了解函数用法.Python也内建了一些方便函数以便程序员参考.dir函数: 查看某个类/对象的方法. 如果有某个方法想不起来,请敲dir. 在idle里,试试 dir(list) help函数: 详细的类/对象介绍. 在idle里, 试试 help(list)1 遍历文件夹和文件 import osimport os.path# os,os.path里包含大多数文件访问的函数,所以要先引入它们. # 请按照你

16、的实际情况修改这个路径 rootdir = d:/download for parent,dirnames,filenames in os.walk(rootdir): # case1: for dirname in dirnames: print ( parentis: + parent) print ( dirnameis: + dirname) # case2 for filename in filenames: print ( parentis: + parent) print ( filenamewithfullpath: + os.path.join(parent,filename

17、) 知识点:*os.walk返回一个三元组.其中dirnames是所有文件夹名字(不包含路径),filenames是所有文件的名字(不包含路径).parent表示父目录.*case1演示了如何遍历所有目录.*case2演示了如何遍历所有文件.*os.path.join(dirname,filename):将形如/a/b/c和d.java变成/a/b/c/d.java. 2 分割路径和文件名 import os.path# 常用函数有三种:分隔路径,找出文件名.找出盘符(windows系统),找出文件的扩展名. # 根据你机器的实际情况修改下面参数. spath = D:/download/re

18、pository.7z # case1: p,f = os.path.split(spath);print ( diris: + p)print ( fileis: + f)# case2: drv,left = os.path.splitdrive(spath);print ( driveris: + drv)print ( leftis: + left)# case3: f,ext = os.path.splitext(spath);print ( fis: + f)print ( extis: + ext) 知识点:这三个函数都返回二元组.*case1分隔目录和文件名*case2分隔盘符

19、和文件名*case3分隔文件和扩展名 总结:5个函数 os.walk(spath) os.path.split(spath) os.path.splitdrive(spath) os.path.splitext(spath) os.path.join(path1,path2) 3 复制文件 import shutilimport osimport os.pathsrc = d:downloadtestmyfile1.txt dst = d:downloadtestmyfile2.txt dst2 = d:/download/test/测试文件夹.txt dir1 = os.path.dirna

20、me(src)print ( dir1%s % dir1)if (os.path.exists(src) = False):os.makedirs(dir1)f1 = open(src, w )f1.write( linean )f1.write( linebn )f1.close()shutil.copyfile(src,dst)shutil.copyfile(src,dst2)f2 = open(dst, r )for line in f2: print (line)f2.close()# 测试复制文件夹树 try :srcDir = d:/download/test dstDir = d

21、:/download/test2 # 如果dstDir已经存在,那么shutil.copytree方法会报错! # 这也意味着你不能直接用d:作为目标路径. shutil.copytree(srcDir,dstDir)except Exceptionaserr: print (err) 知识点:*shutil.copyfile:如何复制文件*os.path.exists:如何判断文件夹是否存在*shutil.copytree:如何复制目录树 总结:4个函数 os.path.dirname(path) os.path.exists(path) shutil.copyfile(src, dst)

22、shutil.copytree(srcDir, dstDir) 4 实战:文件备份小程序 import osimport shutilimport datetime 作用:将目录备份到其他路径。实际效果:假设给定目录/media/data/programmer/project/python,备份路径/home/diegoyun/backup/“,则会将python目录备份到备份路径下,形如:/home/diegoyun/backup/yyyymmddHHMMSS/python/xxx/yyy/zzz.用法:更改这两个参数.backdir:备份目的地.copydirs:想要备份的文件夹. def

23、 mainLogic(): # adddirsyouwanttocopy backdir = d:test print (backdir)copydirs = copydirs.append( d:temp ); # copydirs.append(d:test); print ( Copyingfiles= )start = datetime.datetime.now() # genadatafolderforbackup backdir = os.path.join(backdir,start.strftime( %Y-%m-%d ) # print(backdiris:+backdir)

24、 kc = 0 for d in copydirs:kc = kc + copyFiles(d,backdir)end = datetime.datetime.now() print ( Finished!= ) print ( Totalfiles: + str(kc) print ( Elapsedtime: + str(end - start).seconds) + seconds )def copyFiles(copydir,backdir):prefix = getPathPrefix(copydir) # print(prefixis:+prefix) i = 0 for dirpath,dirnames,filenames in os.walk(copydir): for name in filenames:oldpath = os.path.join(dirpath,name)newpath = omitPrefix(dirpath,prefix) print ( backdiris: + backdir)newpath = os.path.join(backdir,newpath) print ( newpathis: + newpath) if os.path.exists(newpath) != True:os.mak

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1