Python基础(3) - 数据类型:1数字类型
Python数据类型
| 数据类型 | 是否容器 | 是否可变 | 存储方式 |
| 数字 | 否 | 否 | 直接 |
| 字符串 | 否 | 否 | 直接 |
| 列表 | 是 | 是 | 顺序 |
| 元组 | 是 | 否 | 顺序 |
| 字典 | 是 | 是 | 映射 |
数字类型
整 型:1,234,0,-4,0x93,056
长整型:123456789999999L,-8976l(python2.2开始支持)
布尔型:True和False对应整型值1和0
浮点型:1.23,3.14e-10
复 数:1 + 2j,0.23-8.55j
复数的内建属性
real:复数的实部
imag:复数的虚部
conjugate:返回该复数的共轭复数
以0x/0X开头表示16进制常量,以0开头表示8进制常量。
Python的整形值如果超出整形存储范围自动变为长征性。
Python的长整型的长度仅与机器的(虚拟)内存的大小有关,因此理论上不存在超出长整形存储范围情况。
补充1:以下代码可能会引起一些疑惑,id函数返回由Python自己管理的地址(只能理解为类似于C的指针)
>>> i1 = 10
>>> id(i1)
23897708
>>> i2 = 10
>>> id(i2)
23897708
>>>
i1、i2指向相同地址,是一种优化,Python认为一些小数字是“常用”数字,不重新开辟空间存储,只把2个变量绑定同一地址。
数字类型的运算符
|
运算符 |
描述 |
|
x+y,x-y |
加、减 |
|
x*y,x**y,x/y,x%y,x//y |
相乘、乘方、相除、求余、地板除 |
|
<,<=,>,>=,==,<>,!= |
比较运算符 |
|
+=,-=,*=,/=,%=,**=,<<=,>>=,&=,^=,|= |
自变运算符 |
|
x|y |
按位或 |
|
x^y |
按位异或 |
|
x&y |
按位与 |
|
~x |
按位取反 |
|
x<<y,x>>y |
左右移位 |
注意:Python没有自增自减(++, --)操作符。
除法运算:
传统除法:整型除法,舍去小数部分(地板除),如果操作数有一个为浮点型,则执行真正的除法
真正的除法:返回真实的商,不管是整数还是浮点数。未来将是除法运算的标准行为,现阶段通过__future__模块导入
地板除:python2.2引入“//”
>>> 1/2
0
>>> 1.0/2
0.5
>>> 1//2
0
>>> 1.0//2
0.0
>>> from __future__ import division
>>> 1/2
0.5
>>> 1.0/2
0.5
>>>
数字类型转换函数:
int(obj,base=10):返回字符串或数值对象的整型表示,直接截取小数部分,返回整型。
long(obj,base=10):返回字符串或数值对象的长整型表示
float(obj):返回字符串或数值对象的浮点型表示
complex(str) or complex(real,imag=0.0):返回复数
bool(obj):返回布尔值
数字类型功能函数:
abs (num):返回num的绝对值。
pow(num1,num2,mod=1):取num1的num2次方,如果提供mod参数,则计算结果再对mod进行取余运算。乘方可用**运算符代替。
round(flt,ndig=0):接受一个浮点型flt并对其进行四舍五入,保存ndig位小数。取与当前数值最接近的整数(四舍五入),但返回的是浮点型。
序列类型
切片操作:
序列类型支持切片操作。
切片操作有3个参数:参数1指定开始位置,参数2指定结束位置的左闭右开区间,也就是不包含参数2的位置。第三个参数指定步长,负数步长表示反向。
Python序列可以从后向前标负数序号,比如最后一个元素序号是-1,倒数第二个是-2。。。
切片举例:
>>> l = [0,1,2,3,4,5,6]
>>> l[1:]
[1, 2, 3, 4, 5, 6]
>>> l[:4]
[0, 1, 2, 3]
>>> l[:None]
[0, 1, 2, 3, 4, 5, 6]
>>> l[None:None]
[0, 1, 2, 3, 4, 5, 6]
>>> l[0:-1:2]
[0, 2, 4]
>>> l[::-1]
[6, 5, 4, 3, 2, 1, 0]
>>>
常用的功能函数:
Python基础(3) - 数据类型:1数字类型的更多相关文章
- Python基础一数据类型之数字类型
摘要: python基础一中提到了数据类型,这里主要讲解的是数字类型. 数字类型: 1,整型 2,长整型 3,浮点型 4,复数型 1,整型(int) 定义a = 1 通过type函数查看数据类型,整型 ...
- python基础之数据类型之数字、字符串、列表
数据类型及内置方法 一.数字类型 整数型(int) 1.用途:年龄,号码等 2.定义:age = 10 age = int(10) x = int(’11’) int只能转换纯数字的字符串 3 ...
- Python基础(3) - 数据类型:2字符串类型
Python字符串的表示有三种方法: 1.单引号(') >>>a = 'I love python. ' 2.双引号(") >>>a = " I ...
- python基础之数据类型和数值类型
python3的六大数据类型: 1.tuple元组 2.number数字 3.string字符串 4.set集合 5.list列表 6.dictionary字典 其中不可变数据3个:tuple.num ...
- Python基础(3) - 数据类型:3列表类型
Python 列表是序列对象,可包含任意的Python数据信息,如字符串.数字.列表.元组等.列表的数据是可变的,我们可通过对象方法对列表中的数据进行增加.修改.删除等操作.列表用[]包括起来的. 列 ...
- Python基础(3) - 数据类型:5字典类型
Python Dictionary 是 Python 的内置数据类型之一, 它定义了键和值之间一对一的关系 .它是用{}括起来的.每个Dictionary的项的句法为:key:value. Dicti ...
- Python基础(3) - 数据类型:4元组类型
Python Tuple 是不可变 list. 一旦创建了一个 tuple 就不能以任何方式改变它.Tuple是用()包括起来的. Tuple与List都是按照定义的顺序进行排序的,索引从0开始,与 ...
- Python基础之数据类型
Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
随机推荐
- .NET WCF Return String 字符串有反斜杠的处理
应该是: {"Message":"Hello World"} 结果是:" {\"Message\":\"Hello Wo ...
- 【Newtonsoft.Json.dll】操作列表JSON数据
JObject data = JObject.Parse(json); JArray array = JArray.Parse(data["list"] + "" ...
- leetcode 字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. 案例: s = "leetcode" 返回 0. s = "loveleetcod ...
- docker安装与基本配置
Docker有很多种安装的选择,我们推荐您在Ubuntu下面安装,因为docker是在Ubuntu下面开发的,安装包测试比较充分,可以保证软件包的可用性.Mac, windows和其他的一些linux ...
- Collection 集合框架
1. Collection 集合框架:在实际开发中,传统的容器(数组)在进行增.删等操作算法和具体业务耦合在一起,会增加程序的开发难度:这时JDK提供了这样的容器---Collection 集合框架, ...
- tail()和head()
pandas 里的tail() 函数,读取后几行. head() dataframe.head():前五行 显示某一列的前五行,两种方法: 或者:
- LVM 认知与扩容操作
继上次 "Linux系统如何迁移至LVM磁盘"反响不错,近三百的访问量吧.这次想续写点东西,主要讲的是"LVM认知和扩容操作".因为网上大多数不准确,可能作者也 ...
- 无法下载APP
最近遇见下面的情况两次,各种搜索过资料,但是都没什么结果,把自己的解决方法分享如下: 实践证明,出现这个问题,应该是出现了下面几方面原因: 第一次遇见上述问题,是年后来到公司接手了新项目,然后不久传来 ...
- React第二篇:组件的生命周期
前言:因为生命周期是必须要掌握的,所以React的第二篇咱就写这. (版本:16.3.2) React的生命周期大致分为四个状态:分别是Mouting.Updating.Unmounting.Erro ...
- EntityFrameworkCore 数据库生成与迁移
EntityFrameworkCore code first 中数据库不再自动生成,而要手动执行数据迁移相关命令生成. 由于云数据库的安全限制,没有开放公网数据库远程连接端口导致数据库生成命令无法执行 ...