python的学习和理解-编程技巧1讲解.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
python的学习和理解-编程技巧1讲解

把python里面的东西全部当成是对象看待!!! 文件名(模块名),不要包含横杠(横线)(-),而应该采用下划线(_)。因为import x-y是会报语法错误的。 lambda无名函数(特别的,lambda可以包裹任何东东,类似装饰器、适配器) add?=?lambda?x,y?:?x?+?y print(add(1,2)) lambda x: lambda y: print(‘test’) 根据序列构建str或bytes串的join方法(返回str或bytes) fruits?=?[apple,?banana]??? result?=?.join(fruits) 函数中定义函数 def fun1(): def fun1_1(): print(‘text’) return fun1_1 函数、方法、类的装饰器用法: 因为“函数”、“方法”、“类”在python看来都是对象,所以,装饰器都可以将它们用作普通参数,进而进一步处理。 使用%来连接、格式字符串(现在普遍使用str.format函数:用{}和:来代替%) s = “this is a sample %s %s” % (“hello”, “qjj”) s = “this is a sample {} {}” .format(“hello”, “qjj”) x, y = y, x str.format_map(dict) 或 str.format(**dict) yield生成器 生成器表达式(小括号):(x+1 for x in [1, 2, 3]) [x*2 for x in range(10) if x%2==0] or (x*2 for x in range(10) if x%2==0) x = 1 if 21 else 2 for…else… try…except…else…(try语句中没有异常发生时,才执行else语句) 无论是在try还是在except中,遇到return时,只要设定了finally语句,就会中断当前的return语句,跳转到finally中执行,如果finally中遇到return语句,就直接返回,不再跳转回try/excpet中被中断的return语句 在except和try中遇到return时,会锁定return的值,然后跳转到finally中,如果finally中没有return语句,则finally执行完毕之后仍返回原return点,将之前锁定的值返回(即finally中的动作不影响返回值),如果finally中有return语句,则执行finally中的return语句。 在一个循环中,最终要跳出某轮循环之前,会先转到finally执行,执行完毕之后才开始下一轮循环 任何元素都是对象,都可以传递,特别的,把函数(方法)作为参数传递。 函数的默认参数(特别注意可变默认参数,例如列表) xxx() == xxx.__call__() with语句的用法: with open(filename, r, encoding=’utf-8’) as f: for line in f: print line map、filter、zip、functools.reduce 序列操作:itertools.chain、itertools.count、itertools.repeat、itertools.cycle、itertools.groupby、itertools.islice 对于and语句,如果and左边的是true,and右边的值将被返回作为and的结果;对于or语句,如果or左边的是false,or将右边的值将被返回作为or的结果。 动态加载模块 1,使用系统函数__import_() stringmodule = __import__(string) 2,使用imp 模块 import imp stringmodule = imp.load_module(string,*imp.find_module(string)) 3,使用exec import_string = import string as stringmodule exec?import_stringdirUp, dirDown, dirLeft, dirRight = range(4) list[x:y:z]——x,y表示起止索引位置(位置索引从0开始),z表示间隔 if 0x10:比较if 0 x and x 10: if x in dict:比较if x in dict.keys(): 带参数的iter方法: def seek_next_line(f): for c in iter(l

文档评论(0)

33ggoup + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档