Q:如何查看内置函数与方法? A:dir(builtins) 或者 dir(模块),以help查询具体方法的说明
本章是第八章的续集,涵盖了更多关于 Python 渐进类型系统的内容。主要议题包括:
运行后结果为:importerror 指的是错误类型,引入错误 ,错误说明:提示没有命名的模块
不难发现,这里的反运算魔法方法跟上节介绍的算术运算符保持一一对应,不同之处就是反运算魔法方法多了一个“r”,例如:__add__()就对应__radd__().举个例子。
迭代器是 23 种设计模式中最常用的一种(之一),在 Python 中随处可见它的身影,我们经常用到它,但是却不一定意识到它的存在。在关于迭代器的系列文章中(链接见文末),我至少提到了 23 种生成迭代器的方法。有些方法是专门用于生成迭代器的,还有一些方法则是为了解决别的问题而“暗中”使用到迭代器。
运算符的基本使用 运算符 算数运算符 是完成基本的算术运算使用的符号,用来处理四则运算 运算符 描述 实例 + 加 10 + 20 = 30 - 减 10 - 20 = -10 * 乘 10 * 20 = 200 / 除 10 / 20 = 0.5 // 取整除 返回除法的整数部分(商) 9 // 2 输出结果 4 % 取余数 返回除法的余数 9 % 2 = 1 ** 幂 又称次方、乘方,2 ** 3 = 8 在 Python 中 * 运算符还可以用于字符串,计算结果就是字符串重复指定次数的结果 I
在Python中,所有以 __ 双下划线包起来的方法,都统称为 Magic Method 魔术方法,也叫双下划线方法
BigInt数据类型的目的是比Number数据类型支持的范围更大的整数值。在对大整数执行数学运算时,以任意精度表示整数的能力尤为重要。使用BigInt,整数溢出将不再是问题。
定义了函数后,相当于有了一个具有某功能的代码块,想要调用函数,通过函数名()即可。详细示例如下:
Python类有大量特殊方法,实现不同的特殊方法后该类对象则会支持对应的运算符或内置函数,下面的对应关系表列出了大部分特殊方法: 方法功能说明__new__()类的静态方法,用于确定是否要创建对象__init__()构造方法,创建对象时自动调用__del__()析构方法,释放对象时自动调用__add__()+__sub__()-__mul__()*__truediv__()/__floordiv__()//__mod__()%__pow__()**__eq__()、 __ne__()、 __lt__()、
原文链接: https://fishc.com.cn/forum.php?mod=viewthread&tid=48793&extra=page%3D1%26filter%3Dtypeid%26typ
变量:存储数据的容器,我们可以通过变量来操作数据 我们在创建变量时会在内存中开辟一个空间,可以存储不同类型的数据。
python的数值类型包括整数,浮点数,复数,集合,小数和分数,布尔值。它们都是python中的数值类型。如果是有过其他语言编写经验的人,一定很好奇,浮点数和小数的区别是什么?
+运算符除了用于算术加法,还可以用于列表、元组和字符串的合并或连接,生成新对象: >>> 3 + (3+4j) #整数和复数相加 (6+4j) >>> [1, 2, 3] + [4, 5, 6] #连接两个列表 [1, 2, 3, 4, 5, 6] >>> (1, 2, 3) + (4,) #连接两个元组 (1, 2, 3, 4) >>> 'abcd' + '1234' #连接两个字符串 'abcd1234' -运算符除了用于算数减法,还可以用于集合的差集运算:
(1)删除列表元素引起的下标变化错误 演示代码: x = list(range(10)) for i in range(len(x)): if x[i]%2 == 0: del x[i] 出错信息: Traceback (most recent call last): File "C:\Python36\bar.py", line 3, in <module> if x[i]%2 == 0: IndexError: list index out of range 出错原因分析: Python
答:一般来说,Python代码的运行速度比C语言的慢很多,但是如果充分运用内置函数、标准库对象和函数式编程模式的话,运行速度会提高很多,可以接近C语言。
1、字典合并返回新字典,该字典由左操作数和右操作数合并,各操作数必须为dict(或dict子类实例)。如果两个操作数中有一个键,最后出现的值(即从右侧操作数的值)将被覆盖。
举例:mysql -uroot -proot -P3306 -h127.0.0.1 mysql
--**** --python 异常处理---------------------------------------------------------------------------- --**** DB API中定义了一些数据库操作的错误及异常 Warning 当有严重警告时触发,例如插入数据是被截断等等。必须是 StandardError 的子类。 Error 警告以外所有其他错误类。必须是 StandardError 的子类。 InterfaceError 当有数据库接口模块本身的错误(而不是数据库的错误)发生时触发。 必须是Error的子类。 DatabaseError 和数据库有关的错误发生时触发。 必须是Error的子类。 DataError 当有数据处理时的错误发生时触发,例如: 除零错误,数据超范围等等。 必须是DatabaseError的子类。 OperationalError 指非用户控制的,而是操作数据库时发生的错误。例如: 连接意外断开、 数据库名未找到、事务处理失败、内存分配错误等等操作数据库是发生的错误。 必须是DatabaseError的子类。 IntegrityError 完整性相关的错误,例如外键检查失败等。必须是DatabaseError子类。 InternalError 数据库的内部错误,例如游标(cursor)失效了、事务同步失败等等。 必须是DatabaseError子类。 ProgrammingError 程序错误,例如数据表(table)没找到或已存在、SQL语句语法错误、 参数数量错误等等。必须是DatabaseError的子类。 NotSupportedError 不支持错误,指使用了数据库不支持的函数或API等。例如在连接对象上 使用.rollback()函数,然而数据库并不支持事务或者事务已关闭。 必须是DatabaseError的子类。 python提供了2个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。 断言(Assertions): python标准异常 BaseException 所有异常的基类 SystemExit 解释器请求退出 KeyboardInterrupt 用户中断执行(通常是输入^C) Exception 常规错误的基类 StopIteration 迭代器没有更多的值 GeneratorExit 生成器(generator)发生异常来通知退出 StandardError 所有的内建标准异常的基类 ArithmeticError 所有数值计算错误的基类 FloatingPointError 浮点计算错误 OverflowError 数值运算超出最大限制 ZeroDivisionError 除(或取模)零 (所有数据类型) AssertionError 断言语句失败 AttributeError 对象没有这个属性 EOFError 没有内建输入,到达EOF 标记 EnvironmentError 操作系统错误的基类 IOError 输入/输出操作失败 OSError 操作系统错误 WindowsError 系统调用失败 ImportError 导入模块/对象失败 LookupError 无效数据查询的基类 IndexError 序列中没有此索引(index) KeyError 映射中没有这个键 MemoryError 内存溢出错误(对于Python 解释器不是致命的) NameError 未声明/初始化对象 (没有属性) UnboundLocalError 访问未初始化的本地变量 ReferenceError 弱引用(Weak reference)试图访问已经垃圾回收了的对象 RuntimeError 一般的运行时错误 NotImplementedError 尚未实现的方法 SyntaxError Python 语法错误 IndentationError 缩进错误 TabError Tab 和空格混用 SystemError 一般的解释器系统错误 TypeError 对类型无效的操作 ValueError 传入无效的参数 UnicodeError Unicode 相关的错误 UnicodeDecodeError Unicode 解码时的错误 UnicodeEncodeError Unicode 编码时错误 UnicodeTranslateError Unicode 转换时错误 Warning 警告的基类 DeprecationWarning 关于被弃用的特征的警告 FutureWarning 关于构造将来语义会有改变的警告 Ove
花下猫语:最新发布的 Python 3.9 预览版合入了一个很小的改动(PEP-584),关于这个特性本身不需要多说,只需要一两个示例,大家就能接受使用。但是,就像我之前介绍过的一些 PEP 一样,关于它的来龙去脉和引起的相关讨论,都是挺有意思的细节。今天分享的文章,对此有详尽的梳理,推荐大家一读。
同一个变量a可以反复赋值,且可以是不同类型的变量. 这种变量本身类型不固定的语言称为动态语言, 比如python, javascript. 而与之相对应的静态语言,静态语言必须在定义的时候指定扁蕾类型,如果赋值时类型不匹配则会报错.
(1)缩进错误 演示代码: >>> if 5>3: print('5>3') SyntaxError: expected an indented block >>> for i in range(5): print(i) SyntaxError: expected an indented block 错误原因分析与解决方案: Python代码对缩进的要求非常严格,代码缩进层级决定了代码的所属关系。Python初学者最容易遇到的错误应该就是缩进错误,遇到这样的错误时,要仔细检查代码中的缩进是否与预定义的功能逻
连接数据库前需确定已创建数据库,这里我们使用易百mysql教程中的yiibaidb示例数据库(下载地址:http://www.yiibai.com/downloads/yiibaidb.zip)。这里默认大家对MySQL基本操作已经了解,对MySQL不熟悉的朋友也建议先找教程入门学习一下。
最近有些学员问我,Python到底是强类型语言,还是弱类型语言。我就直接脱口而出:Python是弱类型语言。没想到有一些学员给我了一些文章,有中文的,有英文的,都说Python是强类型语言。我就很好奇,特意仔细研究了这些文章,例如,下面就是一篇老外写的文章:
翻译源 来自:https://docs.python.org/3/library/functions.html
Python中支持连续大于或连续等于(链式赋值)的写法,这一点在C语言中是不支持的,如:
这是日常学python的第九篇原创文章 首先祝大家新年快乐哈!学生的估计明天也要上课了,工作的估计早就去上班了,我也快要上课了,哈哈,新年这段时间一直没有写过文章,一直忙于跑亲戚和学习,感觉有点对不起关注我的粉丝。所以,今天决定抽空写一篇技术文章来给大家看看,继上篇写了入门mysql之后,还没有学习如何用python来操作数据库,那我今天就带大家来学习如何用python操操作数据库。 还有文末有福利,这算是给大家的新年礼物(记得点赞哦) 进入正题 工欲善其事,必先利其器。所以第一步,我们先下载第三方库。在这
Python中一切皆对象,python程序中保存的所有数据都是围绕对象这个概念展开的;所有的对象都是由类实例化而来的,只不过这些类有些是python内置的类;例如,整数和浮点数,字符串都是由python内置的类实例化而来的。除此之外用户还可以自定义类型,就是类。
Python解释器内置了很多函数和类型,可以随时随地在编程中使用。其实,我们在前面的学习中已经接触过好多内置函数。
浮点型的除法 1.0/2 1/2.0--->0.5
内建函数名 (表达形式) 主要作用 备注 abs(x) 返回一个X值得绝对值(x=int/float/复数) all(iterable) 如果 iterable 的所有元素均为 True(或 iterable 为空),则返回 True any(iterable) 如果iterable中有任何一个元素为True,则返回True。如果iterable为空,则返回False ascii(object)
Python 解释器内置了许多函数和类型,列表如下(按字母排序)(省略了几个我没用过或者不常用的)。
本文将以Mysql举例,介绍sqlalchemy的基本用法。其中,Python版本为2.7,sqlalchemy版本为1.1.6。
2.增量运算符 += -= *= %= 3. 自增/自减运算符 ++ – 注意前置++和后置++的区别 如果单独使用,两者没有区别。
MongoDB 是一种 NoSQL 数据库。NoSQL(Not Only SQL ),意即"不仅仅是SQL", 泛指非关系型的数据库。这两种类型差别之一是存储方式。关系数据库以键值对存储,它的结构不固定。而关系型数据库以行和列的二维表格形式来存储数据。所以非关系型数据库(如 MongoDB)不支持标准的 SQL 的语法。
在使用NumPy进行数值计算时,有时会遇到TypeError:Can't multiply sequence by non-int of type 'numpy.float64'的错误。本文将解释该错误的原因以及如何解决它。
在内嵌汇编中,可以将C语言表达式指定为汇编指令的操作数,而且不用去管如何将C语言表达式的值读入哪个寄存器,以及如何将计算结果写回C 变量,你只要告诉程序中C语言表达式与汇编指令操作数之间的对应关系即可, GCC会自动插入代码完成必要的操作。 1、简单的内嵌汇编 例:
作为一名程序员,还是必须要会开发网站的,不然别人都会怀疑你是不是程序员了。今天,主要介绍一下如何使用python来搭建一个网站。可能有人会觉得搭建网站不都应该用java么?python的性能那么低。的确,使用java来开发网站的确要比python多的多。但实际上还是有很多大型的网站都是使用python搭建起来的,如国外最大的视频分析网站YouTube、国内的豆瓣、搜狐以及知乎等都是使用python开发的。使用python常用搭建网站的框架有Django、tornado、web.py、web2py、CherryPy、Flask、Bottle、Quixote等。用的比较多的有Django、tornado、Flask。下面主要来介绍一下tornado和django。
UNION将两个或多个查询组合为一个查询,该查询将数据检索到结果中。 由UNION组合的查询可以是由单个SELECT语句组成的简单查询,也可以是复合查询。
try…catch try{}catch(e) {}finally{} Error.name的六种值对应的信息: 1. EvalError:eval()的使用与定义不一致 2. RangeError:数值越界 3. ReferenceError:非法或不能识别的引用数值 4. SyntaxError:发生语法解析错误 5. TypeError:操作数类型错误 6. URIError:URI处理函数使用不当 复制代码 es5严格模式 “use strict” 不再兼容es3的一些不规则语法。使用全
今天来说说 Boolean 。Boolean 类源码也很简单,在阅读源码的过程中思考这么一个问题,Boolean 类型在内存中是如何表示的?或者说,JVM 是如何看待 Boolean 的?
介绍java虚拟机的指令功能,至少能阅读java代码生成的字节码指令含义 一、概述 Java虚拟机采用基于栈的架构,其指令由操作码和操作数组成。 操作码:一个字节长度(0~255),意味着指令集的操作码个数不能操作256条。 操作数:一条指令可以有零或者多个操作数,且操作数可以是1个或者多个字节。编译后的代码没有采用操作数长度对齐方式,比如16位无符号整数需使用两个字节储存(假设为byte1和byte2),那么真实值是 (byte1 << 8) | byte2。 放弃操作数对齐操作数对齐方案: 优势:
版权声明:本文为博主原创文章,转载请注明博客地址: https://blog.csdn.net/zy010101/article/details/88683951
这节实验课很有意思,它是Scheme project的基础实验课。在这节课上我们将会用Python写一个简单的Python解释器,支持一些简单的变量定义、函数调用和lambda表达式。
完整包:Download -> Source Code -> sqlite-autoconf-3080704.tar.gz
方法重载是面向对象中一个非常重要的概念,在类中包含了成员方法和构造方法。如果类中存在多个同名,且参数(个数和类型)不同的成员方法或构造方法,那么这些成员方法或构造方法就被重载了。下面先给出一个Java的案例。
最近几天时间写出这么一篇文章,参考Python创建者龟叔在2005年写的一篇博文,是关于Python函数重载的话题,从龟叔的30行代码中就能看出他的非凡智慧,我有幸在上面做出一些修改。
常量: 一旦赋值,就不可再改变,换句话说,就是不能对它重新赋值。Python不存在常量
参考链接: Python中的Inplace运算符| 1(iadd(),isub(),iconcat()…)
领取专属 10元无门槛券
手把手带您无忧上云