python数据类型和数据运算
数字
整型
包括正整数和负整数,和数学的表示方法一样。如:1、100、8008、-12等。
浮点型
浮点数字也称为小数,如果按照科学计数法表示时,小数点的位置是可变的。如:1.23x109==12.3x108。
布尔值
布尔值只有True、False两种值,要么是True、要么是False。
字符串
字符串是用单引号或双引号括起来的内容。如“abc”‘、'bsc'等。‘’或者“”这种空字符串也是字符串类型的。如果要输出的字符串中含有单引号需要用双引号括起来,如:"I'm Ok"
需要输出双引号可以用转义输出:
print("I'm \" Ok")#I'm " Ok
空值
Python中的空值用None来表示,None和0不一样,None是一个特殊的空值,0是有意义的。
列表
字典
数据运算
Python支持以下类型的运算符 (以下为摘抄)
- 1.算术运算符
- 2.比较(关系)运算符
- 3.赋值运算符
- 4.逻辑运算符
- 5.按位运算符
- 6.成员运算符
- 7.身份运算符
下面让我们依次来看看所有的运算符。
1.算术运算符
假设变量a的值是10,变量b的值是21,则 -
| 运算符 | 描述 | 示例 |
|---|---|---|
+ |
加法运算,将运算符两边的操作数增加。 | a + b = 31 |
- |
减法运算,将运算符左边的操作数减去右边的操作数。 | a – b = -11 |
* |
乘法运算,将运算符两边的操作数相乘 | a * b = 210 |
/ |
除法运算,用右操作数除左操作数 | b / a = 2.1 |
% |
模运算,用右操作数除数左操作数并返回余数 | b % a = 1 |
** |
对运算符进行指数(幂)计算 | a ** b,表示10的21次幂 |
// |
地板除 - 操作数的除法,其结果是删除小数点后的商数。 但如果其中一个操作数为负数,则结果将被保留,即从零(向负无穷大)舍去 | 9//2 = 4 , 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0 |
有关算术运算符的示例代码,请参考::http://www.yiibai.com/python/arithmetic_operators_example.html
2.比较(关系)运算符
比较(关系)运算符比较它们两边的值,并确定它们之间的关系。它们也称为关系运算符。假设变量a的值10,变量b的值是20,则 -
| 运算符 | 描述 | 示例 |
|---|---|---|
== |
如果两个操作数的值相等,则条件为真。 | (a == b)求值结果为 false |
!= |
如果两个操作数的值不相等,则条件为真。 | (a != b)求值结果为 true |
> |
如果左操作数的值大于右操作数的值,则条件成为真。 | (a > b)求值结果为 false |
< |
如果左操作数的值小于右操作数的值,则条件成为真。 | (a < b)求值结果为 true |
>= |
如果左操作数的值大于或等于右操作数的值,则条件成为真。 | (a >= b)求值结果为 false |
<= |
如果左操作数的值小于或等于右操作数的值,则条件成为真。 | (a <= b)求值结果为 true |
有关比较(关系)运算符的示例代码,请参考:http://www.yiibai.com/python/comparison_operators_example.html
3.赋值运算符
假设变量a的值10,变量b的值是20,则 -
| 运算符 | 描述 | 示例 |
|---|---|---|
= |
将右侧操作数的值分配给左侧操作数 | c = a + b表示将a + b的值分配给c |
+= |
将右操作数相加到左操作数,并将结果分配给左操作数 | c + = a等价于c = c + a |
-= |
从左操作数中减去右操作数,并将结果分配给左操作数 | c -= a 等价于 c = c - a |
*= |
将右操作数与左操作数相乘,并将结果分配给左操作数 | c *= a 等价于 c = c * a |
/= |
将左操作数除以右操作数,并将结果分配给左操作数 | c /= a 等价于 c = c / a |
%= |
将左操作数除以右操作数的模数,并将结果分配给左操作数 | c %= a 等价于 c = c % a |
**= |
执行指数(幂)计算,并将值分配给左操作数 | c **= a 等价于 c = c ** a |
//= |
运算符执行地板除运算,并将值分配给左操作数 | c //= a 等价于 c = c // a |
有关赋值运算符的示例代码,请参考:http://www.yiibai.com/python/assignment_operators_example.html
4.逻辑运算符
Python语言支持以下逻辑运算符。假设变量a的值为True,变量b的值为False,那么 -
| 运算符 | 描述 | 示例 |
|---|---|---|
and |
如果两个操作数都为真,则条件成立。 | (a and b)的结果为False |
or |
如果两个操作数中的任何一个非零,则条件成为真。 | (a or b)的结果为True |
not |
用于反转操作数的逻辑状态。 | not(a and b) 的结果为True。 |
有关逻辑运算符的示例代码,请参考:http://www.yiibai.com/python/logical_operators_example.html
5.按位运算符
按位运算符执行逐位运算。 假设变量a = 60; 和变量b = 13; 现在以二进制格式,它们将如下 -
a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
Python的内置函数bin()可用于获取整数的二进制表示形式。
以下是Python语言支持位运算操作符 -
| 运算符 | 描述 | 示例 |
|---|---|---|
& |
如果它存在于两个操作数中,则操作符复制位到结果中 | (a & b) 结果表示为 0000 1100 |
![]() |
如果它存在于任一操作数,则复制位。 | (a b) = 61 结果表示为 0011 1101 |
^ |
二进制异或。如果它是一个操作数集合,但不是同时是两个操作数则将复制位。 | (a ^ b) = 49 (结果表示为 0011 0001) |
~ |
二进制补码,它是一元的,具有“翻转”的效果。 | (~a ) = -61有符号的二进制数,表示为1100 0011的补码形式。 |
<< |
二进制左移,左操作数的值由右操作数指定的位数左移。 | a << 2 = 240 (结果表示为 1111 0000) |
>> |
二进制右移,左操作数的值由右操作数指定的位数右移。 | a >> 2 = 15(结果表示为0000 1111) |
有关按位运算符的示例代码,请参考:http://www.yiibai.com/python/bitwise_operators_example.html
6.成员运算符
Python成员运算符测试给定值是否为序列中的成员,例如字符串,列表或元组。 有两个成员运算符,如下所述 -
| 运算符 | 描述 | 示例 |
|---|---|---|
in |
如果在指定的序列中找到一个变量的值,则返回true,否则返回false。 |
- |
not in |
如果在指定序列中找不到变量的值,则返回true,否则返回false。 |
- |
有关成员运算符的示例代码,请参考:http://www.yiibai.com/python/membership_operators_example.html
7.身份运算符
身份运算符比较两个对象的内存位置。常用的有两个身份运算符,如下所述 -
| 运算符 | 描述 | 示例 |
|---|---|---|
is |
如果运算符任一侧的变量指向相同的对象,则返回True,否则返回False。 |
|
is not |
如果运算符任一侧的变量指向相同的对象,则返回True,否则返回False。 |
- |
有关身份运算符的示例代码,请参考:http://www.yiibai.com/python/identity_operators_example.html
8. 运算符优先级
下表列出了从最高优先级到最低优先级的所有运算符,如下所示 -
| 序号 | 运算符 | 描述 |
|---|---|---|
| 1 | ** |
指数(次幂)运算 |
| 2 | ~ + - |
补码,一元加减(最后两个的方法名称是+@和-@) |
| 3 | * / % // |
乘法,除法,模数和地板除 |
| 4 | + - |
|
| 5 | >> << |
向右和向左位移 |
| 6 | & |
按位与 |
| 7 | ^![]() |
按位异或和常规的“OR” |
| 8 | <= < > >= |
比较运算符 |
| 9 | <> == != |
等于运算符 |
| 10 | = %= /= //= -= += *=**= |
赋值运算符 |
| 11 | is is not |
身份运算符 |
| 12 | in not in |
成员运算符 |
| 13 | not or and |
逻辑运算符 |
python数据类型和数据运算的更多相关文章
- python基础2(数据类型、数据运算、for循环、while循环、列表)
1.数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是一个对象,即所有数据都是对象. 对象的3个特性: 身份:即内存地址,可以用id()来获取 类型 ...
- Python 基础篇:数据类型、数据运算、表达
1. 数据类型 1.1 数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-231-231-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取 ...
- 小白的Python之路 day1 数据类型,数据运算
一.数据类型初识 1.数字 2 是一个整数的例子.长整数 不过是大一些的整数.3.23和52.3E-4是浮点数的例子.E标记表示10的幂.在这里,52.3E-4表示52.3 * 10-4.(-5+4j ...
- pyhton学习笔记(基础五:数据类型、数据运算)
数据类型初识 1. 数字 整数:2是一个整数的例子 长整数 不过是大一些的整数 3.23和52.3E-4是浮点数的例子.E标记表示10的幂.在这里,52.3E-4表示52.3*10-4. (-5+4j ...
- python数据类型分类以及运算类型
一.python数据类型 目录: 1.数字(整数.小数) 2.字符串(单引号.双引号.三引号) 3.元组 #元素确定之后不能修改 4.列表 #元素可以修改 5.集合 #不讲顺序,得到的结果没有重复元 ...
- Python数据类型和数据操作
python数据类型有:int,float,string,boolean类型.其中string类型是不可变变量,用string定义的变量称为不可变变量,该变量的值不能修改. 下面介绍python中的l ...
- python数据类型与基础运算
注释:了解其他数据类型补充 基础数据类型补充 可以回一下之前的数据类型: 整型,浮点型,字串符和列表. 一.字典(dict) #字典:可以精准的储存数据 是用大括号表示'{}' '字典和数据数据列表差 ...
- sass05 数据类型,数据运算
/*! 数字类型 */ $n1: 1.2; $n2: 12; $n3: 14px; p{ font-size: $n3; } /*! 字符串类型*/ $s1: container; $s2: 'con ...
- python之路-数据运算
位运算: 运算符 描述 实例 + 加-两个对象相加 ...
随机推荐
- linux 虚拟环境问题
1.python环境 python2和python3命令用来区分python版本 pip2和pip3命令用来区分pip,你的包到底安装在哪里pip3 install xxx sudo apt inst ...
- springboot整合mybatis,redis,代码(五)
redis注解开发过程中包含许多注解 1.@Cacheable 可以标记在方法上,也可以标记在类上.当标记在方法上时表示该方法是支持缓存的,当标记在类上时则表示该类所有的方法都是支持缓存的.应用到读取 ...
- aspectj 与 spring 自定义注解
** * ErrorCode: * * @author yangzhenlong * @since 2016/7/21 */ @Target({ElementType.METHOD}) @Retent ...
- [USACO18DEC]Sort It Out(树状数组)
[Luogu5156] 题解 求字典序第 k 小的满足题意的集合,取反一下,就是求序列中字典序第 k 大的最长上升子序列 [51nod1376] 最长递增子序列的数量 置 \(f_{i}\)表示以权值 ...
- 使用Entity Framwork 保存数据时,提示不能在对象中插入重复键,违反了PRIMARY_KEY约束
这种情况,大多发生在有外键存在的情况下,解决方法是: 把dataContext.Set<T>().Add(model)修改成dataContext.Models.Add(model);
- HDU6444(子段和、分情况比较)
要点 不难想到gcd一下然后枚举每个开头走一圈,并记录一下数值. 最终答案是分情况的:1.能走几圈走几圈然后加上最后剩余的最大子段和:2.也可能是最后一圈后面的拖后腿了,所以最后一圈没走完就停,即长度 ...
- xlrd和xlwd模块
xlrd模块 是python中一个第三方的用于读取excle表格的模块 exlce结构分析 一个excle表格包含多个sheet 一个sheet中包含多行多列 每个单元格具备唯一的行号和列号 常用函数 ...
- Java 字节流和字符流
程序中都是以流的形式进行数据的传输和保存,在java.io包中数据流操作的两大类是字节流和字符流. 1. 字节流 InputStream和OutputStream是所有表示字节流的类的父类,它们都是抽 ...
- forEach与jdk8中的lambda, Stream
增强for循环 :forEach 反编译后可以看到实际使用的仍然是Iterator+while遍历的 forEach的优点是写法简单,缺点是不能使用xxx.remove(e)或者iter.remove ...
- 1 Groovy
1.1 什么是Groovy? groovy 是一个弱类型,动态语言,并且运行在JVM之上.它与java联系紧密.它是一个功能丰富和友好的java语言. Groovy源代码,通过Groovy编译器编译 ...
