盘点Python那些不为人知的冷知识,附赠400集python视频教程分享

​你在Python的学习中有没有遇到过一些好玩又冷门的知识吗?我最近整理了一些,给大家分享一下。

省略号也是对象

...这是省略号,在Python中,一切皆对象,它也不例外。在Python中,它叫做Ellipsis,在Python 3中你可以直接写…来得到这玩意。

>>>...

Ellipsis

>>>type(...)

而在2中没有…这个语法,只能直接写Ellipsis来获取。

>>>Ellipsis

Ellipsis

>>>type(Ellipsis)

>>>

它转为布尔值时为真

>>>bool(...)

True

最后,这东西是一个单例。

>>>id(...)

4362672336

>>>id(...)

4362672336

这东西有啥用呢?据说它是Numpy的语法糖,不玩Numpy的人,可以说是没啥用的。在这里相信有许多想要学习Python的同学,大家可以+下Python学习分享群:304050799即可免费领取一整套系统的 Python学习教程!

类的首字母不一定是大写

在正常情况下,我们所编写的所见到的代码,好像都默许了类名首字母大写,而实例用小写的这一准则,但这并不是强制性的,即使你反过来也没有关系。

但有一些内置的类,首字母都是小写,而实例都是大写。

比如bool是类名,而True,False是其实例;比如ellipsis是类名,Ellipsis是实例;还有int,string,float,list,tuple,dict等一系列数据类型都是类名,它们都是小写。

增量赋值的性能更好

诸如+=和*=这些运算符,叫做增量赋值运算符。这里使用用+=举例,以下两种写法,在效果上是等价的。

#第一种

a=1;a+=1

#第二种

a=1;a=a+1

+=其背后使用的魔法方法是__iadd__,如果没有实现这个方法则会退而求其次,使用__add__。

这两种写法有什么区别呢?

用列表举例a+=b,使用__add__的话就 像是使用了a.extend(b),如果使用__add__的话,则是a=a+b,前者是直接在原列表上进行扩展,而后者是先从原列表中取出值,在一个新的列表中进行扩展,然后再将新的列表对象返回给变量,显然后者的消耗要大些。

所以在能使用增量赋值的时候尽量使用它。

and和or的取值顺序

and和or是我们再熟悉不过的两个逻辑运算符。而我们通常只用它来做判断,很少用它来取值。

如果一个or表达式中所有值都为真,Python会选择第一个值,而and表达式则会选择第二个。

>>>(2 or 3)*(5 and 7)

14#2*7

最后柠檬为大家准备了由北京尚学堂高淇老师亲自录制,400集python全栈入门到精通的python全套+前端+4个实战项目,第二季已经新鲜出炉了!小伙伴们快快领取学习吧!

Python作为一种编程语言,被称为“胶水语言”,更被拥趸们誉为“最美丽”的编程语言,从云端到客户端,再到物联网终端,无所不在,同时还是人工智能优选的编程语言。

硬件:

第一篇:操作系统简介

第二篇:操作系统

linux基础:

第一篇:初始Linux

第二篇:基本使用

第三篇:Linux进阶

python基础:

第一篇:python基础大纲

第二篇:变量与交互

第三篇:快捷键

第四篇:基本数据类型,基本二,字符串,列表,元组,字典,集合

第五篇:基础条件和循环

第六篇:循环,元组,字典列表代码整理,计算器小程序,一大波作业来袭

第七篇:第六篇-练习代码

第八篇:集合

第九篇:字典

第十篇:元组

第十一篇:列表

第十二篇:字符串

第十三篇:日期格式化

python-文件处理:

第一篇:字符编码、文件处理

python-函数:

第一篇:初始函数

第二篇:函数进阶

第三篇:装饰器

第四篇:递归与二分法

第五篇:内置函数思维导图

第六篇:迭代器、生成器、列表推倒。。

第七篇:eval一个神器的函数

python-模块和包:

第一篇:模块导入和包

第二篇:常用的几个模块

第三篇;摘要算法模块

第四篇:logging模块

第五篇:configparser模块

python-面向对象:

第一篇:初始面向对象

第二篇:面向对象三大特性

第三篇:property-staticmethod-classmethod

第四篇:神奇的反射

第五篇:面向对象拓展

python-异常处理:

第一篇:异常处理

python-网络编程:

第一篇:初始socket

第二篇:客户端服务端一、客户端服务端二

python-进程、线程、协程:

第一篇:线程与进程

第二篇:并发编程

第三篇:多进程模拟抢票

第五篇:进程的队列

第六篇:互斥锁

第七篇:开启线程的两种方式,线程queue

第八篇:线程与进程的两种应用

第九篇:死锁与递归锁,定时器

第十篇:event模式数据库链接

第十一篇:进程池与线程池,统一进程的两个任务切换问题

第十二篇:同步与异步

第十三篇:阻塞IO,非阻塞IO,多路复用

第十四篇:进程、线程、协程终极版

数据库-MySQL-MongoDB:

第一篇:MySQL--数据库基本操作一,基本操作二

第二篇:MySQL--进阶操作(了解即可)

第三篇:MySQL--经典习题

第四篇:MongoDB

前端:HTML、css、JavaScript、jquery、vue.js:

第一篇:HTML

第二篇:css

第三篇:JavaScript

第四篇:jQuery,跨域实例

第五篇:vue.js入门,项目结构介绍,es6入门

第六篇:vue.js详细的操作实例一

第七篇:vue-router篇

第八篇:快速上手npm

第九篇:初识webpack

python-Django框架:

第一篇:安装以及介绍--Django生命周期--一些命令----笔记---笔记2--笔记3

第二篇:初始django,MTV模型,请求方式测试

第三篇:简单的登录注册,admin管理,权限管理测试

第四篇:模板层,练习,模板继承,csrf跨站

第五篇:基于MySQL的图书管理,图书管理增删改,加了cookie的图书管理

第五篇:orm查询,查询二

第六篇:cookie验证,cookie与session

第七篇:diy自己的权限系统

第八篇:Django-ajax,,跨站请求伪造,jQuery-serizlize的用法

第九篇:文件上传,验证码,Django缓存问题

第十篇:Django-rest-framework,部分总结

第十一篇:content-type

Git-版本控制:

第一篇:Git入门

第二篇:git操作演示

python-flask框架:

第一篇:flask各种小东西

第二篇:flask开发框架,配置文件

第三篇:单例模式

第四篇:flask-session源码剖析

第五篇:flask-session组件

第五篇:信号

第六篇:sqlalchemy操作,操作2,详细,,命令使用

第七篇:flask-script

redis:

第一篇:基本使用

爬虫相关

第一篇:爬取校花网资源

第二篇:请求库-request

第三篇:解析库-re-beautifulsoup

第四篇:存储库-MySQL(见上面MySQL),MongoDB

第五篇:github绵密登录,自动投递简历

第六篇:提高爬虫性能,爬虫性能测试代码

第七篇:爬虫框架scrapy1,爬虫框架scrapy2

第八篇:爬取亚马逊商品信息,爬取网络小说

第九篇:分布式爬虫 ---

项目练习:

第一篇:基于bootstrap搭建静态网站

第二篇:基于bootstrap+MySQL搭建动态网站

第三篇:基于HTML,css,jQuery,JavaScript,MySQL搭建博客系统

第四篇:基于django做权限控制

第五篇:基于django做增删改查组件,分页器组件

第五篇:为公司做crm资产管理

第六篇:基于flask做权限控制

第七篇:爬虫项目

第八篇:路飞学成搭建

源码剖析:

第一篇:flask

第二篇:django

第三篇:django-restframework源码流程分析

金融与算法:

第一篇:金融介绍

第二篇:量化投资与python

第三篇:ipython基础认识

第四篇:numpy数组运算,事例代码

第五篇:pandas数据分析,事例代码

第六篇:matplotlib绘图可视化,事例代码

第七篇:金融分析实例(了解)

第八篇;算法基础(理论),实例代码

第九篇:排序lowB三人组,示例代码

第十篇:NB三人组,示例代码

第十一篇:算法进阶、其它(了解)

第十二篇:数据结构、数据结构实例代码

第十三篇:设计模式、设计模式实例代码

你可能感兴趣的:(盘点Python那些不为人知的冷知识,附赠400集python视频教程分享)