当前位置: 首页 > 编程日记 > 正文

从零开始学 Python 之运算符

从零开始学 Python 之运算符

前言

大家好,这里是「痴海」从零开始学习 Python 系列教程。此文首发于「痴海」公众号,欢迎大家去关注。学习一门语言最好的办法,就是教懂别人。在这公众号,我会从 Python 最基础的教程写起,慢慢一步步进阶。写这教程同时也是我自己对于 Python 知识的复习巩固。喜欢的朋友可以点击关注,一到周五每天更新 Python 相关知识,周六周日则会写关于认识一些的文章。话不多说,开始今天的知识。

Python3 数字(Number)

Python 数字数据类型用于存储数值。

数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。

以下实例在变量赋值时 Number 对象将被创建:

var1 = 1
var2 = 10
复制代码

你也可以使用 del 语句删除一些数字对象的引用

del 语句的语法是:

del var1[, var2[,var3[..., varN]]]]
复制代码

你可以通过使用 del 语句删除单个或多个对象的引用,例如:

del var
del var_1, var_b
复制代码

Python 支持三种不同的数值类型:

  • 整型(int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。

  • 浮点型(float)- 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 10 ^ 2 = 250)

  • 复数(complex) - 复数由实部和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示,复数的实部 a 和虚部 b 都是浮点型。

我们可以使用十六进制和八进制代表整数:

number = 0xA0F # 十六进制
number = 0o33 #八进制
复制代码

Python 数字类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

  • int(x) 将 x 转换为一个整数。
  • float(x) 将 x 转换到一个浮点数。
  • complex(x) 将 x 转换到一个复数,实数部分为 x,虚数部分为 0.
  • complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。

以下实例将浮点数变量 a 转换为整数:

a = 1.0
int(a)
复制代码

Python 数字运算

Python 解释器可以作为一个简单的计算器,你可以在解释器里输入一个表达式,它将输出表达式的值。

表达式的语法很直白:‘+,-,’和 / 和其它语言(如 Pascal 或 C)里一样。例如:

2 + 2
50 - 5 * 6
(50 - 5 * 6) / 4
8 /5 # 总是返回一个浮点数
复制代码

注意:在不同的机器上浮点运算的结果可能会不一样。

在整数除法中,除法(/)总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 //:

17 / 3 # 整数除法返回浮点型
17 // 3 # 整数除法返回向下取整后的结果
17 % 3 # %操作符返回除法的余数
5 * 3 + 2
复制代码

等号(=)用于给变量赋值。赋值之后,除了下一个提示符,解释器不会显示任何结果。

width = 20
height = 5 * 9
width = height
复制代码

Python 可以使用 ** 操作来进行幂运算:

5 ** 2 # 5 的平方
2 ** 7 # 2 的 7次方
复制代码

变量在使用前必须先“定义”(即赋予变量一个值),否则会出现错误:

n   # 尝试访问一个未定义的变量
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'n' is not defined
复制代码

不同类型的数混合运算时会将整数转换为浮点数:

3 * 3.75 / 1.5

7.0 / 2
复制代码

在交互模式中,最后被输出的表达式结果被赋值给变量_。例如:

tax = 12.5 / 100
price = 100.50
price * tax
price + _
round(_, 2)
复制代码

此处,_ 变量应被用户视为只读变量。

数学函数

数学函数

随机函数

随机数可以用于数学、游戏、安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

Python 包含以下常用随机函数:

随机函数

三角函数

Python 包括以下三角函数:

三角函数

数字常量

数字常量

写在最后

至此「从零开始学习 Python:Python 基础篇」就已结束。给自己三分钟的时间,闭上眼来回想下,今天这篇你都学习到了什么。

如果你按我说的去做,你会发现你只能回忆起一些内容,很难把全部的知识都记住。这是非常正常的情况,所以需要你温故而知新,时常回顾。在最后我把今天的知识点做出思维导图送给大家。欢迎大家去关注公众号「痴海」。本系列教程会首发于公众号。

20180329

相关文章:

今天照了大肚照

今天陪老婆去照了大肚照&#xff0c;本来累了一周了好不容易盼到周六想睡个懒觉&#xff0c;结果比平时起床还早&#xff01;要去照相&#xff01;然而一想到俺家小小&#xff0c;我就很激动&#xff0c;为了俺家小小&#xff0c;我一定加倍努力&#xff0c;做一个好爸爸。 …

【Qt】QT_BEGIN_NAMESPACE 和 QT_END_NAMESPACE

在看QtCreator源码时,总遇到QT_BEGIN_NAMESPACE 和 QT_END_NAMESPACE两个宏,源码中对这两个宏的定义伪代码如下 #if !defined(QT_NAMESPACE) # define QT_BEGIN_NAMESPACE # define QT_END_NAMESPACE #else # define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE {# define Q…

Java排序算法:冒泡排序

Java排序算法&#xff1a;冒泡排序//创建数组并赋值int[] data new int[] {11,10,55,78,100,111,45,56,79,90,345,1000};for(int i0;i < arr.length-1;i){for(int j 0; j < arr.length-i-1;j){if(arr[j] > arr[j1]){int temp arr[j];arr[j] arr[j1];arr[j1] temp;…

前腾讯AI Lab负责人张潼加入创新工场,任港科大创新工场联合实验室主任

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;不过三个月&#xff0c;前腾讯 AI 主任张潼已对外公布了他离职后的新动态。3 月 20 日&#xff0c;创新工场宣布&#xff0c;张潼博士已加盟创新工场…

ESX上ORACLE 10.2RAC(4.在REHAT4.7中安装ORACLE RAC)

四、 安装CRS软件 上传cluster软件到rac1,rac2的/home/oracle目录下 [rootrac1 ~]# cd /home/oracle [rootrac1 oracle]# ls 10201_clusterware_linux32.zip Desktop ocfs2 oracleasm [rootrac1 oracle]# unzip 10201_clusterware_linux32.zip [rootrac2 oracle]# unzip 10201_…

【Qt中文手册】QObject

Qt几乎所有的类都是从QObject直接或间接继承的,但是你真的了解QObject吗?下面先看看QObject在官方手册中的介绍。 一、QObject简介 1、信号和槽 QObject是所有Qt类的基类,是Qt对象模型的核心。该模型的核心功能是信号和槽的通信机制(有吐槽Qt信号和槽的,个人建议不要用…

整理下.net分布式系统架构的思路

最近看到有部分招聘信息&#xff0c;要求应聘者说一下分布式系统架构的思路。今天早晨正好有些时间&#xff0c;我也把我们实际在.net方面网站架构的演化路线整理一下&#xff0c;只是我自己的一些想法&#xff0c;欢迎大家批评指正。 首先说明的是.net下开源内容较少&#xff…

柔性生态布局未来,小鱼易连 2019“深耕视界逐梦小鱼”北京火爆招募

3 月 21 日&#xff0c;小鱼易连 “深耕视界逐梦小鱼”——2019 春季伙伴招募大会北京站在北京东方美爵酒店成功召开。 小鱼易连联合创始人兼 CEO 袁文辉以“深耕视界逐梦小鱼” 为主题&#xff0c;为到场的四百家合作伙伴和媒体完整展示了小鱼易连全面布局产业互联网&#xf…

perl XML创建XML文件

首先安装XML::Writer,XML::Parser等模块 1.执行/usr/bin/perl -MCPAN -e install "YAML" 安装YAML模块 2.进入CPAN模式&#xff0c;进行下载模块操作 $ sudo perl -MCPAN -e shell 3.在CPAN模式下进行安装&#xff0c;nolock_cpan> install XML::Writer XML::Pars…

开发自己的山寨Android注解框架

目录 开发自己的山寨Android注解框架开发自己的山寨Android注解框架 参考 Github黄油刀 Overview 在上一章我们学习了Java的注解(Annotation)&#xff0c;但是我想大家可能感觉&#xff0c;虽然理解了也会学会&#xff0c;但是不知道干什么用&#xff0c;那么请继续忍受我这枯燥…

特斯拉起诉小鹏汽车员工窃取商业机密,何小鹏回应

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;3 月 21 日&#xff0c;外媒 TheVerge 报道称&#xff0c;特斯拉正针对多名前雇员和自动驾驶汽车公司 Zoox 提起诉讼&#xff0c;涉嫌盗用公司商业机…

【Qt】一个使用QEventLoop时,遇到的教训

1、问题描述 伪代码如下&#xff1a; QEventLoop eventLoop; QObject::connect(this, &Class::signal, [](){doSomething();eventLoop.exit(0); }); emit signal(); eventLoop.exec();在执行eventLoop.exec()时&#xff0c;造成永不退出。 2、原因分析 本打算在&#x…

基于kryo序列化方案的memcached-session-manager多memcached...

为什么80%的码农都做不了架构师&#xff1f;>>> 上次基于Java IO的序列化方案配置了memcached-session-manager&#xff0c;但是性能不好&#xff0c;现在先简单配置成基于kryo的 Xml代码 <Context path"/mobilemail" docBase"D:\webapp\WebR…

Python持续点火,跟进还是观望?

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑Python 这把火&#xff0c;到底烧了多久了&#xff1f;近日&#xff0c;李笑来带着他的 Python 编程书&#xff0c;一路狂收 Star、Fork&#xff0c;火速登顶 GitHub Trending 榜&#xff0c;直接 C 位出道。币圈大佬也玩…

win2d 图片水印

win2d 图片水印 本文告诉大家如何使用 win2d 给图片加上水印。 安装 首先需要使用 Nuget 安装 win2d &#xff0c;安装参见win10 uwp win2d 如果没有更新 dot net core 那么在运行可能会出现下面异常System.TypeLoadException: Requested Windows Runtime type Microsoft.Graph…

【Qt】QtCreator中的单例编程(以ActionManager为例)

1、ActionManager简介 ActionManager类负责注册菜单和菜单项以及键盘快捷键。 ActionManager的公共函数都是静态的,只有使用信号时,才用到单例。 2、ActionManager单例伪代码 头文件中将构造函数和析构函数设置成私有(private),使用instance()函数获取单例 class Acti…

37、C++ Primer 4th笔记,特殊工具与技术,类成员指针

1、成员指针&#xff08;pointer to member&#xff09;包含类的类型以及成员的类型。成员指针只应用于类的非static成员。static类成员不是任何对象的组成部分&#xff0c;所以不需要特殊语法来指向static成员&#xff0c;static成员指针是普通指针。通过指定函数的返回类型&a…

聊一聊javascript执行上下文

跟大家聊聊js的执行上下文 一&#xff0c;相关概念 EC : 执行上下文 ECS : 执行环境栈 VO &#xff1a; 变量对象 AO &#xff1a; 活动对象 scope chain &#xff1a;作用域链 二&#xff0c;执行上下文 javascript运行的代码环境有三种&#xff1a; 全局代码&#xff1a;代码…

【Qt】QtCreator中使用ActionManager类管理标题栏(MunuBar)、菜单(Menu)和菜单中的项目(Action)

1、简介 QtCreator中使用ActionManager类管理标题栏(MunuBar)、菜单(Menu)和菜单中的项目(Action),下面以创建“New”动作为例,介绍ActionManager的使用方法,后续会详细分析ActionManager。 2、创建标题栏(MunuBar) const char MENU_BAR[] = "QtCreator.MenuBar&quo…

和达摩院深度绑定,阿里云下一个十年,成为“云上的阿里巴巴”

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑整理 | 非主流出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;2009 &#xff5e; 2019&#xff0c;阿里云已经走过了 10 年时光。在此次的阿里云峰会北京站上&#xff0c;为阿里云的站台的是张建锋。去年 11 月…

如何用TF Object Detection API训练交通信号灯检测神经网络?

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑作者简介&#xff1a;申泽邦&#xff08;Adam Shan&#xff09;&#xff0c;谷歌认证机器学习专家&#xff08;Google Developer Expert&#xff09;&#xff0c;兰州大学智能驾驶团队技术负责人&#xff0c;硕士在读。文…

iOS progressive Web App (PWA) 技术

随着 iOS 11.3 的发布&#xff0c;iOS PWA 的时代终于来了&#xff01;本文对 iOS 中 PWA 的能力进行了分析&#xff0c;并将其与 iOS 上的 Native App、Android 上的 PWA 进行了深度对比&#xff0c;是值得收藏的一篇好文。 随着 iOS 11.3 的发布&#xff0c;苹果悄悄的支持了…

VS新建类自动添加版本注释

我们开发的时候习惯在代码顶部加上自己的版权说明。 每次拷贝挺麻烦的&#xff0c;上网查了一下&#xff0c;2003的介绍但不少。但08的模板生成方式好像改变了 后来2005的一篇介绍给了我一点提示。原来模板文件放在common7目录下。 主要分为ProjectTemplates和ItemTemplates&am…

【linux】shell中整数运算的加、减、乘、除

1、使用双括号“(( ))” shell中变量实现加法的方法 d $(($d 2)) 例子如下 #!/bin/bash d0 echo "d$d"for((i1;i<10;i)); do d$(($d 2)) echo "d$d" done unset d((i$j$k)) 等价于 iexpr $j $k ((i$j-$k)) 等价于 iexpr $j -$k ((i$…

简单使用PDO

2019独角兽企业重金招聘Python工程师标准>>> 首先基本配置&#xff1a; 连接MYSQL <?php $dsn mysql:hostlocalhost;dbnameworld;; $user user; $password secret; try { $dbh new PDO($dsn, $user, $password); } catch (PDOException $e) { echo Connecti…

一文看懂模糊搜索1.0到3.0的算法迭代历程

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑作者 | 宋广泽责编 | 郭芮来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;前一段时间在Linux上用C语言做了一个信息管理系统&#xff0c;初始版本的搜索就是直接使用了C语言库文件<string.h>里的库函数…

【linux】shell中浮点数运算的加、减、乘、除

bash 不支持浮点运算&#xff0c;如果需要进行浮点运算&#xff0c;需要借助bc,awk 处理。 1、bc #!/bin/bash#加 f$(echo "4.32.5"|bc) echo "4.32.5$f"#减 f$(echo "4.3-2.5"|bc) echo "4.3-2.5$f"#乘 f$(echo "4.30*2.50&qu…

页面加载和解析流程

输入url,浏览器向服务器发出请求&#xff0c;服务器返回html文件&#xff0c;浏览器开始载入html代码&#xff0c;发现head标签有link标签引入外部的css文件&#xff0c;浏览器发出css文件的请求&#xff0c;服务器返回这个css文件&#xff0c;浏览器继续载入body中的代码&…

作为程序员应有10项权利

Scott认为&#xff0c;作为开发人员&#xff0c;应该有权享有以下列表所示的待遇&#xff1b;不过在国内&#xff0c;这个却有点异想天开&#xff0c;能有几个老板愿意给员工如此舒适的环境呢&#xff1f; 1.每位程序员应该拥有一个安静的工作环境 2.每位程序员应该拥有听音乐…

【Qt】QtCreator中自动补全注释

1、简述 在QtCreator中编辑代码,可以自动补全函数注释,供doxygen使用并生成文档。doxygen的使用方法,后续会写一个详细的博文。 2、使用方法 在函数前分别输入“/**”、“/*!”、“//!”、“///”,然后敲击回车键,会自动补全下方函数的注释。 注意:输入的注释一定要紧…