Python是一门清晰易学的语言,可是这不代表我们Python没有黑暗料理,下面我就挑选了几个能让你大呼"卧槽,怎么会这样"的程序,这些例子不光有趣,也能够加深我们对于Python细节的理解,看看你自己能不能解释吧。

以下代码如果不信请手动尝试,测试环境:Python 3.6

20跟21有什么区别

第一次看到这个例子的时候我的心里面充满了wtf,20跟21有什么区别为什么结果不一样?

原因是:python在进行内部优化的时候会做常量替换的操作,也就是把 'a' * 20这种语句替换成'aaaaaaaaaaaaaaaaaaaa',这样运行的时候节省时间,而刚好,小于等于20的时候会做这个优化,而大于20就不做这个优化了。

让一个函数Return两次

一般的Python教程会告诉你,当函数执行到第一个return的时候会退出,剩下的语句不再执行。

然而如果是这样的话上面的代码中我们的somefunc()应该返回的是'from_try'。

结果却不是。这个现象的原因是finally后面的语句永远会执行,而函数的返回值由最后一个return语句决定,所以函数的返回值是finally语句中的返回值。

循环几次?

你猜下面的代码会循环几次

正确输出:

0

1

2

3

循环了4次,所以i=10这个语句完全没用了吗?

是的,这跟Python的for循环的机制有关,每次在循环体之前,下一个需要的值先会产生好然后赋值给循环变量,这里的i。

虽然循环体中有一个i = 10,但下次循环前for又会做一个i=2或者i=3的操作,把i=10覆盖了。

一石三鸟

现在我们赋个值给第一个元素,再看看结果

为什么有三个元素都变成了X,我们明明值赋了一个值啊?

这是因为[row] * 3这个操作实际上没有复制row,而只是创建了三个object reference,也就是board[0] board[1] board[2]这三个元素其实指向了同一个列表row,那么改变board[0][0]其实就是改变row[0],也同时改变了board[1][0] board[2][0]。

256和257有什么区别?

这又是怎么回事?你知道么

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

python的代码有哪些_Python有哪些有趣的代码呢,这些代码让相关推荐

  1. python文件按时间排序_python按修改时间顺序排列文件的实例代码

    python按修改时间顺序排列文件,具体代码如下所示: import os def sort_file_by_time(file_path): files = os.listdir(file_path ...

  2. python如何使用图片做背景_Python实现给照片换底色(附代码)

    本篇文章给大家带来的内容是关于Python实现给照片换底色(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Pyt ...

  3. python可以制作网站吗_Python大神带你用30行代码打造一个网站,爬虫+web不一样的玩法...

    首先,先把实际的效果图放上来: 用Python做的个性签名网站-效果图 在开始做之前,我们必须得知道这个用了那些模块: flask:一个轻量级的web开发框架,相信很多人也听说过这个牛逼加简洁的框架 ...

  4. python刷b站教程_python + selenium 刷B站播放量的实例代码

    B站UP主的主要收益来源(播放量获取的奖励.用户充电.广告等等) 首先做up主最直接的就是做视频,当你的粉丝过1000或者视频总播放超过10万时可以申请创造激励,申请创造激励之后,你的原创视频播放会给 ...

  5. python数字转对应中文_python中将阿拉伯数字转换成中文的实现代码 | 学步园

    复制代码 代码如下: #!/usr/bin/python #-*- encoding: utf-8 -*- import types class NotIntegerError(Exception): ...

  6. python编辑用户登录界面_python编辑用户登入界面的实现代码

    1.需求分析 登入界面需要达到以下要求: 系统要有登入和注册两个选项可供选择 系统要能够实现登入出错提示,比如账户密码错误等,用户信息保存在user_info.txt文件夹中 系统要能够进行登入错误次 ...

  7. python多元线性回归模型案例_Python 实战多元线性回归模型,附带原理+代码

    原标题:Python 实战多元线性回归模型,附带原理+代码 作者 | 萝卜 来源 | 早起Python( ID:zaoqi-python ) 「多元线性回归模型」非常常见,是大多数人入门机器学习的第一 ...

  8. python通过cookie绕过验证码_Python Selenium Cookie 绕过验证码实现登录示例代码

    之前介绍过通过cookie 绕过验证码实现登录的方法.这里并不多余,会增加分析和另外一种方法实现登录. 1.思路介绍 1.1.直接看代码,内有详细注释说明 # FileName : Wm_Cookie ...

  9. python批量解压文件_python 批量解压压缩文件的实例代码

    下面给大家介绍python 批量解压压缩文件的实例代码,代码如下所述: #/usr/bin/python#coding=utf-8import os,sys import zipfile open_p ...

最新文章

  1. Hadoop集群三种作业调度算法介绍
  2. Visio studio 2019中opencv 4.1.1运行环境配置(亲测可用)
  3. 数据库系统概论期末复习以及知识整理
  4. elementui 按钮 表单_element UI实现表格中添加开关控制按钮
  5. C++|OpenCV-HSV图像
  6. Kaggle Human Protein Atlas 比赛总结—如何闯入Top1%拿到金牌
  7. mysql报错 Row size too large ( 8126)
  8. SqlServer的日常生活
  9. php fpm 平滑重启,nginx、php-fpm平滑重启和重载配置
  10. 短信猫前台群发短信的示例程序
  11. OpenStack源码系列---nova-conductor
  12. C#,SharpGL开发的3D图表控件
  13. asp.net pdf如何转换成tif_PDF如何转换成PPT格式?PDF转PPT软件使用方法分享
  14. vue3.0之Router的使用
  15. java蓝桥杯合根植物_Java实现蓝桥杯 历届试题 合根植物
  16. 只有rear指针的环形循环队列
  17. web开发经典,jquery修改style属性display
  18. python画生肖兔
  19. transitive dependencies (if any) will not be available, enable debug logging for more details
  20. [转][JS]Math.random()随机数的二三事

热门文章

  1. linux创建表空间 没有权限,Linux oracle数据库创建表空间、用户并赋予权限
  2. 玛纽尔扫地机器人怎样_扫地机器人怎样选?科沃斯超能王VS云鲸对比测试,看完你就懂了...
  3. C51语言支持哪些数据类型,C51编译器支持的数据类型(1)
  4. 操作系统各大公司笔试题汇总
  5. MySql恢复密码的过程
  6. 【bzoj2238】Mst(树链剖分+线段树)
  7. 华为快应用引擎架构及开发实践
  8. 解决python3与python2的pip命令冲突问题冲突(window版)
  9. Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found...
  10. mysql数据库主从同步状态正常,无异常报错,数据不能同步