范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

6个值得玩味的Python代码

  先选取了 6 个自己认为值得玩味的 python代码,希望对正在学习 python 的你有所帮助。
  1、类有两个方法,一个是 new,一个是 init,有什么区别,哪个会先执行呢? class test(object):      def __init__(self):          print("test -> __init__")       def __new__(cls):           print("test ->__new__")            return super().__new__(cls)    a = test()
  运行结果如下: test ->__new__  test -> __init__
  再来看另一个例子 class test2(object):      def __init__(self):          print("test2 -> __init__")      def __new__(cls):          print("test2 ->__new__")          return object()  b = test2()
  运行结果如下: test2 ->__new__
  这里给出官方的解释: init  作用是类实例进行初始化,第一个参数为 self,代表对象本身,可以没有返回值。 new  则是返回一个新的类的实例,第一个参数是 cls 代表该类本身,必须有返回值。很明显,类先实例化才能产能对象,显然是  new  先执行,然后再  init ,实际上,只要  new  返回的是类本身的实例,它会自动调用  init  进行初始化。但是有例外,如果  new  返回的是其他类的实例,则它不会调用当前类的  init 。下面我们分别输出下对象 a 和对象 b 的类型: print( type(a))  #
  可以看出,a 是 test 类的一个对象,而 b 就是 object 的对象。
  2、map 函数返回的对象
  map()函数第一个参数是 fun,第二个参数是一般是 list,第三个参数可以写 list,也可以不写,作用就是对列表中 list 的每个元素顺序调用函数 fun 。 >>> b=map(lambda x:x*x,[1,2,3])   >>> [i for i in b]   [1, 4, 9]   >>> [i for i in b]
  有没有发现,第二次输出 b 中的元素时,发现变成空了。原因是 map() 函数返回的是一个迭代器,并用对返回结果使用了 yield,这样做的目的在于节省内存。 举个例子: #encoding:UTF-8    def yield_test(n):        for i in range(n):            yield call(i)        #做一些其它的事情         def call(i):        return i*2     #使用for循环     x = yield_test(5)   print([i for i in x])   print([i for i in x])
  执行结果为: [0, 2, 4, 6, 8]
  这里如果不用 yield,那么在列表中的元素非常大时,将会全部装入内存,这是非常浪费内存的,同时也会降低效率。
  3、正则表达式中 compile 是否多此一举?
  比如现在有个需求,对于文本  中国 ,用正则匹配出标签里面的"中国",其中 class 的类名是不确定的。有两种方法,代码如下:>>> import re   >>> text = "中国"    >>> #方法一   >>> re.findall("(.*)",text  ["中国"]    >>> #方法二    >>> regex="(.*)"   >>> pattern = re.compile(regex)   >>> re.findall(pattern,text)    ["中国"]
  这里为什么要用 compile 多写两行代码呢? 原因是 compile 将正则表达式编译成一个对象,加快速度,并重复使用。
  4、[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6] >>> [j for i in [[1,2],[3,4],[5,6]] for j in i]   [1, 2, 3, 4, 5, 6]
  5、一行代码将字符串 "->" 插入到 "abcdefg"中每个字符的中间 >>> "->".join("abcdef")    "a->b->c->d->e->f"
  这里也建议多使用 os.path.join() 来拼接操作系统的文件路径。
  6、zip 函数
  zip() 函数在运算时,会以一个或多个序列(可迭代对象)做为参数,返回一个元组的列表。同时将这些序列中并排的元素配对。zip() 参数可以接受任何类型的序列,同时也可以有两个以上的参数;当传入参数的长度不同时,zip 能自动以最短序列长度为准进行截取,获得元组。 >>> a=[1,2]    >>> b=(3,4)    >>> zip(a,b)       >>> for i in zip(a,b):    ...     print(i)    ...    (1, 3)    (2, 4)    >>> a="ab"    >>> b="xyz"    >>> for i in zip(a,b):    ...     print(i)   ("a", "x") ("b", "y")
  本次分享就到这啦,看到点个赞再走吧

苹果13,镇压一个时代的手机,续航界的霸主阅读本文前,请您先点击上面的关注,这样您就可以继续免费收到最新文章了。每天都有分享。完全是免费订阅,请放心关注。感谢大家的阅读,喜欢小编为你精心编辑的文章吗?欢迎留言评论,小编都会你会放弃苹果手机,支持华为手机吗?不是放弃,不屑一顾,一直没用过,一路从摩托罗拉爱立信索爱,再到三星hTc,最终一路跟风华为。会放弃苹果,支持咱国产呲牙答案是肯定的,支持华为,要是说几年前的话,我还是会倾向苹果手机小米荣耀带头降价,国产开始反击iPhone13,库克没想到来得这么快说到今年最畅销的旗舰机单品,熟悉手机界的朋友应该都知道,不是国产旗舰,而是苹果阵营的iPhone13!从双十一单品销量结果就可以看出来,高端价位的手机单品基本上还是被iPhone1小米12即将发布,除了小屏旗舰和MIUI13,还有个隐藏看点不能忽视有数码博主透露,小米今年最后一场发布会将在12月举行,此次发布会的主题是发布新机小米12。据目前的曝光来看,小米12并不是全系标配2K屏幕,很有可能会根据机型划分为2K和1080P小米10S重回低价,256GB一亿像素OIS防抖无线充电,你会买吗?声明原创不易,禁止搬运,违者必究!在手机市场中,小米手机现在的热度可以说是愈演愈烈,这也要源于小米的产品做得越来越好。在今年双十一期间,还诞生不少的热销机型。不难发现,这些机型都有9款小米手机将更新至MIUI13,其中有你的爱机吗?目前MIUI13尚未正式公布,一切关于升级系统的消息都是假的,再说一遍,一切关于升级系统的消息都是假的。小米方面没有公布任何机型可以升级到MIUI13,所谓的9款机型,纯粹是无聊之今日热点小米申请注册小米移动商标新东方在线股价大涨1阿里内部人士回应裁员2万人传闻20日消息,近日一则阿里内部会通知要裁员大概2万人,管理层更加扁平化管理,有的部门将彻底消失的截图在网上流传。对此,阿里内部人士回应凤凰网科技称,没苹果拍照勉强第三,华为意外落榜,小米三星上榜前三智能手机差异化越来越小,不过智能手机在拍照能力似乎差异化越来越大。最近曝光的2021年手机拍照榜单排名,华为竟然意外落榜,究竟什么原因导致华为手机拍照被排出榜单?手机排行榜,来自国温暖呵护脚底整个冬季夜晚的秘密HITH折叠足浴按摩器D3体验写在最前这几天温度骤降,到晚上脚都冰冰冻,每天泡脚也成为了我们晚上入睡前的一个项目,之前买过蒸脚机,泡脚桶,但是感觉不滋润,这次看到HITH新出的折叠足浴按摩器D3,带泡脚按摩,带介绍一种日立双UV表4波段收音机便携式录音机TRK8181这是一款日立有史以来设计的最经典的贫民窟BOOMBOX音响之一。使用了大量闪亮的铬和铝,很多旋钮和开关双天线VU表和调谐强度表。DRPS(数字随机节目选择)磁带歌曲搜索。6英寸低音iPhone可当身份证?Apple电子ID功能延期推出于WWDC2021开发者大会中,Apple公布电子ID功能,预告美国公民将可以把身份证驾驶执照等个人身份证明,如信用卡般加入至AppleWallet。不过,原定于本年内推出的这项功
比iPhone13实惠!小米12意外险上线只要300多12月29日消息,小米12系列的MiCare服务价格公布,限时(截至明年1。1号)优惠359元起。具体价格如下小米12X359元小米12479元小米12Pro599元。该服务可以在I7处理器秒变奔腾处理器,维修店看你不容易,不收钱了I7处理器的电脑进维修店后秒变奔腾处理器,电脑维修店得了便宜还卖乖,维修店看你也不容易,人也不错,处理器的钱就不另收了。处理器是电脑的灵魂,处理器既是电脑的运算核心又是电脑的控制核干掉耳机接口还不爽,苹果新iPhone准备砍掉充电口和实体SIM卡自从2007年苹果发布了自己的首款iPhone之后,就彻底改变了整个手机行业。其首次定义手机交互是利用我们手指利用触摸的方式来操控手机,一块大触摸屏加上一个HOME按键,既简单又好适合过年过节,官宣,订婚,结婚用的手机壁纸有比较好看的吗?这是我的,亲自做的,做这些图学习了很久,从晚上十一点多开始学,一直到晚上凌晨三点多才做出来的,学会了就简单多了,不过选字体还有贴图的时候就比较纠结了,我是一个比较纠结的人,所以这方手机泡水了,最好的解决办法是什么?最高级别防水,一会儿半会儿没啥事。最好的办法就是找个修手机的打开吹干!千万别对着卡槽往里吹!也别放在米袋里!都是扯淡!马上从水里捞出来关机立刻拿去修手机是小灵通?没百度?第一时间,小米12发布会总结,有亮点也有低级错误,首发减500元认真的吗?昨天晚上抽出时间观看了小米12新品发布会,不知道是不是自己年纪大了,再也找不到以前那种激情澎湃的感觉了,总的来说,整个发布会重点表达了,MIUI13很厉害,6。28英寸小屏旗舰塞进小米可折叠专利曝光,采用翻盖式设计,对标华为P50Pocket?小米可折叠专利曝光,采用翻盖式虽然除了个别厂商,如摩托罗拉会将翻盖式可折叠手机,作为进军可折叠手机领域的首选之外,大多数厂商都会将横向可折叠设计,作为旗下第一部折叠屏手机的首选,但小米MIUI13正式版发布第一批12月29日左右陆续发布你在第一批吗?小米在12月28日晚间召开发布会,正式发布了全新的MIUI13系统。MIUI联合泰尔实验室共建流畅度评测模型,牵引优化目标,应用使用流畅度明显提升,鲁大师安卓流畅度横测小米全部第一3699元,小米12正式发布,一文告诉你值不值经过半个多月的预热,小米12系列终于发布了,和往年不同的是这一代小米12策略有所不同,采用了双尺寸旗舰策略,通俗一点,就是一款大屏一款小屏,类似于iPhone13和iPhone13小米MIUI13无字模式开启内测,去除桌面应用名称显示IT之家12月29日消息,小米MIUI13于昨日正式发布,为了配合全新发布的小部件体系,MIUI桌面特别推出新功能无字模式。MIUI官方表示,相较于传统桌面,无字下的桌面更加彰显个有没有什么学习软件推荐?10款超适合学生使用的学习app,90的同学都在使用!1我的倒计时(iOSAndroid)学习前先做好个人暑假的时间规划,精确到秒的倒计时,可以设置反复提醒时间,让你不会忘记任何重