python数值运算操作符也叫做内置操作符_Python的操作符 - osc_r1gtal48的个人空间 - OSCHINA - 中文开源技术交流社区...
一、数值运算符
python提供了9个基本的数值运算符,这些运算符由编译器直接提供,所以叫做内置运算符(操作符):
运算符 功能
+ 加
- 减
* 乘
/ 除
% 模
** 幂
// 整除
-i 负数
+i 正数
+的使用:
>>> 2+3
5
-的使用:
>>> 2-3
-1
*的使用:
>>> 2*3
6
这9种运算符和数学习惯完全一致,运算结果也符合数学意义。比如两个数相除如果商是小数则结果是浮点数。实数和虚数计算结果是虚数则输出虚数:
>>> 2/3
0.6666666666666666
>>> 1.2+2+7j
(3.2+7j)
>>>
%的使用:
>>> 2%3
2
**的使用:
>>> 2**3
8
//的使用:
>>> 2//3
0
>>> 8//3
2
python和其他一些编程语言不同,它没有自减(--)自增(++)等运算符。
二、比较运算符
比较运算符有的教科书称为关系运算符,如要有6种:
符号 功能
> 大于
< 小于
>= 大于等于
<= 小于等于
== 等于
!=或<> 不等于
这些运算符的涵义和数学意义上的涵义一致。
三、赋值运算符
要清楚赋值运算就要清楚一个概念:变量。所谓变量就是在内存中开辟的一个空间。所谓赋值就是在这个空间里塞进数据,变量在赋值前没有数据类型,赋值后变量的数据类型就是所赋值的类型,变量是需要名字的,变量的名字由字母、下划线及数字组成,但数字不能在最前面,变量名字中不能包含空格。另外命名python变量名不能用python的关键字(关于关键字的概念后面介绍)。比如给变量命名是合法的:a、abc、_abc、a2bc、a_2Bc;以下是不合法的:2a 数字在前;if 关键字;A^b 有非法符号。在python中汉字作为变量是合法的,但是一般不会用汉字命名变量。在python程序中变量一旦命名就要它赋值,不赋值的变量Pyhton会报错误:
>>> a
Traceback (most recent call last):
File "", line 1, in
a
NameError: name 'a' is not defined
>>>
python中赋值运算符有7个。分别是:
符号 功能 实例
= 赋值
>>> a=2 >>> a 2
相当于把2这个值塞进a申请预留的内存空间
+= 加赋值
>>> a=2 >>> a+=3 >>> a 5
相当于a=a+3
-= 减赋值
>>> a=5 >>> a-=4 >>> a 1
相当于a=a-4
*= 乘赋值
>>> a=2 `>>> a=4>>> a 8
相当于a=a*4
/= 除赋值
>>> a=12>>> a/=3>>> a 4.0
相当于a=a/3
%= 模赋值
>>> a=13>>> a%=3>>> a 1
相当于a=a%3
**= 幂赋值 >>> a=2 >>> a**=4 >>> a 16
相当于a的4次方再赋值给a
一般用的最多的也是最主要的是=赋值运算符,它在数学教科书中是“等于”,在这里不是“等于”,在python中“等于”用==。
四、逻辑运算符
在python中逻辑运算符共三个:
and:与。表示两个量或多个量同时为True其值才是True,否则为False。
>>> a=True
>>> b=True
>>> a and b
True
>>> b=False
>>> a and b
False
or :或。表示两个量或多个量有一个为True,其值即为True,只有当所有的量为False是才为False。
>>> a=True
>>> b=False
>>> a or b
True
>>> a=False
>>> b=False
>>> a or b
False
not :非。即取反。当量为True是其值为False;当量为False时其值为True。
>>> a=True
>>> not a
False
>>> a=False
>>> not a
True
五、位运算符
python同样也支持位运算,只是用的不多。python的为运算有6个。
&:按位与。即按位如果两个对应为同时为1则为1,否则为0。
>>> a=0b1001
>>> b=0b0100
>>> a&b
0
|:按位或。即按位如果两的对应的位有一个为1就为1,同时为0才为0。
>>> a=0b1001
>>> b=0b0100
>>> bin(a|b)
'0b1101'
~:按位非。即按位取反,安慰取反后会出现符号位,这一点需要注意。
>>> a=0b1001
>>> bin(~a)
'-0b1010'
由于用的是64位计算机,所以其中的a的值实际应为0b后面60个0再加上后面的1001。因此,按位取反后应该是60个1后面加0110,用-号表示应再对0110取反加1,即是结果-0b1010。
^:按位异或。即按对应为异或,相同为0不同位1。
>>> a=0b1001
>>> b=0b0100
>>> bin(a^b)
'0b1101
<<:>
>>> a=0b1001
>>> bin(a<<2)
'0b100100'
>>:按位右移。按位右移要给出移位数,否侧报错。移位后空余位补0。
>>> a=0b1001
>>> bin(a>>2)
'0b10'
另外,在python中还有成员运算符:in 、not in;及身份运算符:is 、is not。用到时再叙述。
六、转义字符
python中还有一种操作符,叫转义字符。转义字符用反斜杠\加相应字母或符号表示。常用的有:
\\:显示反斜杠。
\':显示单引号。
\":显示双引号。
\n:换行。
\t:制表符。
转义字符一般在打印(print)输出时使用,它是因为有些字符在python语言中已被定义为其他涵义,为了避免打印输出错误,或者需要表现其他功能(比如换行、制表位等)而设计的
python数值运算操作符也叫做内置操作符_Python的操作符 - osc_r1gtal48的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐
- python变量无需指定类型对吗_Python变量类型 - osc_3rgq3dae的个人空间 - OSCHINA - 中文开源技术交流社区...
变量存储在内存中的值,这就意味着在创建变量时会在内存开辟一个空间. 基于变量的数据类型,解析器会分配指定内存,并决定什么数据可以被存储在内存中. 因此变量可以指定不同的数据类型,这些变量可以存储整数. ...
- python语言是由谁设计并领导开发的_python语言概述 - osc_lt3ocv4d的个人空间 - OSCHINA - 中文开源技术交流社区...
python语言的发展 python语言诞生于1990年,由Guide van Rossum设计并领导开发. python语言是开源项目的优秀代表,其解释器的全部代码都是开源的. 编写Hello程序 ...
- qt和python关系_Python与Qt - AlphaJay的个人空间 - OSCHINA - 中文开源技术交流社区
入门知识- Python与Qt关系 1. Qt内建的Script支持:Qt Script for Applications (QSA),跨平台脚本工具箱,为静态的Qt/C++程序提供了一个脚本界面,可 ...
- python 条件表达式换行_Python基础语法 - LongKing-Xu的个人空间 - OSCHINA - 中文开源技术交流社区...
python基础语法 一.标识符 在Python中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. 在Python中的标识符是区分大小写的. 在Python中以下划线开头的标识符是有 ...
- python列表去重效率_python面试题 - osc_yztbpii7的个人空间 - OSCHINA - 中文开源技术交流社区...
1.一行代码实现1--100之和 In [1]: sum(range(1,101)) Out[1]: 5050 1-100求和 2.如何在一个函数内部修改全局变量 a=520 deffun():glo ...
- python作业大全_Python作业汇总 - osc_p8sbsl3n的个人空间 - OSCHINA - 中文开源技术交流社区...
1. info = 'abc' info[2] = 'd' 结果是什么,为什么会报错呢? info[2]已赋值,不能再次赋值."str"对象不支持项目分配 2. 如果要把上面的字符 ...
- python包管理机制_Python 包机制 - osc_8wyy9cyu的个人空间 - OSCHINA - 中文开源技术交流社区...
Python中的Module是比较重要的概念.常见的情况是,事先写好一个.py文 件,在另一个文件中需要import时,将事先写好的.py文件拷贝 到当前目录,或者是在sys.path中增加事先写好的 ...
- python之禅中文原文_Python之禅 - osc_ns45oss7的个人空间 - OSCHINA - 中文开源技术交流社区...
在博主学习 Python 的模块部分中,曾不小心写下了这句: import this 则导致出现了以下内容: 原文及翻译: The Zen of Python, by Tim Peters Beaut ...
- python剪切文件_python剪切文件 - osc_42713235的个人空间 - OSCHINA - 中文开源技术交流社区...
心血来潮,手机上导出的图片全部按日期放在不同文件夹,很是麻烦,想放在一起方便浏览,手动操作费时费力,想到bat命令,不是很熟,看到python欣喜不已,很是方便 递归遍历文件,剪切出来,删除空文件夹 ...
最新文章
- linux socket无延迟发送数据
- Java中的文件下载
- 做报表必看!一个工具就可搞定中国式复杂报表需求
- 输入流中的read和readfully方法区别和原理
- Product search parameter的determine逻辑
- ssrf漏洞内网渗透_渗透小白看了也能明白的SSRF
- C++控制台打飞机小游戏 | CSDN 博文精选
- Spring之对象依赖关系
- 简单解决 Blocked a frame with origin XXX from accessing a cross-origin 。iframe跨域问题
- Java架构师之路资源
- 关于美图秀秀的flash在线版
- Spring Boot获取节假日API
- 《阿里铁军》的读后感范文3700字
- 如何利用PS动作一秒将字体生成逼真刺绣效果
- iOS审核被拒含义及应对措施-长文
- JDBC 学习笔记(四)—— 自定义JDBC框架+Apache—DBUtils框架+事务管理+操作多表 - 解无邪
- 阿里大数据ACP认证对找工作到底有用嘛?
- ibm软件下载网页链接
- 倍福EL6021使用Modbus RTU通信例程
- JAVA教程(二)之面向对象前基础知识