数据类型

在python中,能够直接处理的的数据类型有以下几种:(这里似乎说法不一样,我这里仅表示自己的观点)

(1).数字(Number)

(2).字符串(String)

(3).布尔值(Bool)

(4).空值(None)

(1).数字(Number):

数字包括整数(int),浮点数(float),复数(complex)。

整数:Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,并且因为是python3,没有了python2的长整型(long)。

所以整数没有限制大小。(受限于虚拟内存) 例如:10086,-22332233,0等都是整数。

计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0x67等。

>>>a=1000

>>>b=-100

>>>print(a-b)

1100

浮点数:浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的。例如,1.23x109和12.3x108是完全相等的。

浮点数可以用数学写法,例如:1.56,-0.32,6.66等。但对于很大的浮点数,必须用科学计数法表示,(10用e代替)。例如:1.23x103=1.23e3,0.000099=9.9e-5。

由于整数和浮点数在计算机内部的存储方式不一样,整数运算永远是精确的(除法也是!),而浮点数运算可能会有四舍五入的误差。

例如:

1 >>>a=pow(1.23,3)2 >>>b=pow(1.23,2)3 >>>print(b-a)4 -0.3479669999999999

复数:与数学中的概念一样,对,就是那个a+bi。复数由实数部分和虚数部分构成,也可以表示成complex(a,b)。复数的实部real和虚部imag都是浮点型。a,b都是浮点型。

操作如下:

1 >>>v=a+bi2 >>>v.real #实部

3 a4 >>>v.imag #虚部

5 b6 >>>v.conjugate() #共轭复数

7 a-bi

注:#符号为注释,注释后的内容仅显示在代码行中,是对代码作用的解释。

(2).字符串(string):

字符串是一个由字符组成的序列,用单引号(’)或双引号(”)括起来。有时需用转义字符(\)。

转义字符:当需要在字符串中使用特殊字符时,,需要用反斜杠( \ )作为转义字符。(前面有说过但是并不全面)

常用转义字符:

转义字符

具体描述

\n

换行

\r

回车

\'

'

\"

"

\\

\

\(在行尾时)

续航符

\a

响铃

\b

退格(backspace)

\000

\v

纵向制表符

\t

横向制表符

例如:

1 >>>print("\\\t\\\000")2 \ \3 >>>print('我是\n学生')4 我是5 学生6 >>>print("鬼\7 灭\8 之\9 刃")10 鬼灭之刃

(3).布尔值(Bool):

布尔值通常用来判断条件是否成立。一个布尔值只有True/False两种值。

在python2中没有布尔值,它用1表示True,0表示False。

在python3中,True和False被定义成了关键字,但它们的值仍然是1和0,并可以和数字相加。

1 >>>print(True)2 True3 >>>print(False)4 False5 >>>print(4>2)6 True7 >>>print(4>8)8 False9 #数值运算

10 >>>print(int(True),int(False))11 1012 >>>print(((True+100)-True)/100)13 1.0

14 >>>print('%s, %d'% (bool('0'), False))15 True , 0

每一个Python对象都天生具有布尔值(True/False), 进而可用于布尔测试(如用在if、while中)。

以下对象的布尔值都是False:

1.none

2.False(布尔型)

3.0【整型0】:0;【长整型0】:0L;【浮点型0】:0.0;【复数0】:0.0+0.0j。

4.空【空字符串】:'';【空列表】:[];【空元组】:();【空字典】:{}。

5.用户自定义的类实例,该类自定义返回0或False的方法。

除开上述对象之外的所有其他对象的布尔值都为True。

1 >>>print(bool(True))2 True3 >>>print(bool(None andTrue))4 False5 >>>print(bool(None),bool(0),bool(0.0),bool(0.0+0.0j))6 False False False False7 >>>print(bool(''), bool([]), bool(()), bool({}))8 False False False False9 >>>class A: pass

10 >>> classB:11 def __len__(self):12 return013 >>> classC:14 def __nonzero__(self):15 returnFalse16 >>>print(bool(A), bool(A()))17 >>>print(bool(B), bool(B()))18 >>>print(bool(C), bool(C()))19 True True20 True False21 True True

布尔值可以用and,or,not运算。(基本上和数学中的 与,或,非 差不多。)

and是与运算:只有所有都为True,and的运算结果才能是True。

1 >>>print(True andTrue)2 True3 >>>print(True andFalse)4 False5 >>>print(5<2 and 4>6)6 False

or是或运算: 只要其中一个为True,运算结果就为True。

1 >>>print(True orFalse)2 True3 >>>print(False orFalse)4 False5 >>>print(bool(None or 1))6 True

not是非运算:它是一个单目运算符,把True变成False,False变成True。

1 >>>print(notTrue)2 False3 >>>print(not '')4 True

(4).空值(None):

空值是Python里一个特殊的值,用None表示。

None并不是0。不要将二者混淆。0是有意义的,而None只是一个特殊的空值。

【注:数据类型还有列表,元组等,会在以后说。】

数据类型转换

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

以下就是一些数据类型的转换用到的函数,这些函数会返回一个新的对象,表示转换的值。

函数

描述

int(x[,base])

将x转换为一个整数

float(x)

将x转换到一个浮点数

complex([real[,imag]])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tupel(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个 (key, value)元组序列

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串

END

python中数据类型转换_Python(二).数据类型,数据类型转换相关推荐

  1. python整型变量的使用_python(二)数据类型与变量

    python基础之数据类型与变量 一.变量 变量 声明变量 #!/usr/bin/env python age=18 gender1='male' gender2='female' 变量作用:保存状态 ...

  2. python中浮点数类型_Python基本数据类型之浮点型

    1.浮点数的介绍 float(浮点型)是Python基本数据类型中的一种,Python的浮点数类似数学中的小数和C语言中的double类型: 2.浮点型的运算 浮点数和整数在计算机内部存储的方式是不同 ...

  3. python基础数据实例_Python基本数据类型及实例详解

    Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对 ...

  4. python数据类型变量_python的数据类型与变量

    计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形. 音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的 ...

  5. python读取json数据格式问题_浅谈Python中的异常和JSON读写数据的实现

    异常可以防止出现一些不友好的信息返回给用户,有助于提升程序的可用性,在java中通过try ... catch ... finally来处理异常,在Python中通过try ... except .. ...

  6. b是python文件二进制打开_如何在Python中打开和显示原始二进制数据?

    'rb'模式允许您从Python中的文件读取原始二进制数据:with open(filename, 'rb') as file: raw_binary_data = file.read() type( ...

  7. Python中通过索引名称提取数据loc()函数Python中通过行和列下标提取数据iloc()函数

    [小白从小学Python.C.Java] [Python全国计算机等级考试] [Python数据分析考试必会题] ● 标题与摘要 Python中通过索引名称提取数据 loc()函数 Python中通过 ...

  8. 在python中创建Excel文件并写入数据

    来源:<在python中创建Excel文件并写入数据> python中的包xlwt和xlsxwriter都是比较方便创建excel文件并写入数据的. xlwt中: 通过xlwt.Workb ...

  9. ML之XGBoost:XGBoost参数调优的优秀外文翻译—《XGBoost中的参数调优完整指南(带python中的代码)》(二)

    ML之XGBoost:XGBoost参数调优的优秀外文翻译-<XGBoost中的参数调优完整指南(带python中的代码)>(二) 目录 2. xgboost参数/XGBoost Para ...

最新文章

  1. Android EditView 软键盘把布局顶上去的处理方法
  2. python数据笔记分析_利用 Python 进行数据分析学习笔记(一)
  3. ubuntu 16.04安装visual studio code 提示libnss3版本低:NSS = 3.26 is required
  4. mybatis传入数组怎么写_推荐的MyBatis传参方式List、数组等
  5. 开发管理 (3) -项目启动会议
  6. Mysql 死锁过程及案例详解之清空缓存锁Flush Lock
  7. JDOM/XPATH编程指南
  8. JMX学习笔记(一)-MBean
  9. threadlocal内存泄露_ThreadLocal用法详解和原理
  10. TikTok 已经成为影响力营销的新战场
  11. 【必备干货】1000字讲清3大财务数据表
  12. php ssl扩展,php如何安装openssl扩展?
  13. java编程思想之多态理解
  14. 计算机黑屏死机,电脑死机后开机黑屏怎么办
  15. c语言中 让小球 发射小球,小球发射问题求大神解决(让小球向鼠标蓄力方向发射)...
  16. Error:Apostrophe not preceded by \ (
  17. Excel应用技巧之三——常用技巧
  18. EDA技术试验二:组合逻辑电路设计、仿真与实现实验
  19. ChatGPT国内在线版、微信版
  20. Cocos2d游戏开发之如何解包获得pvr.ccz中的美术资源

热门文章

  1. linux使用命令配置网络,使用nmcli命令配置网络
  2. [.Net 4.0]泛型的协变,以及高阶函数对泛型的影响 Part 1
  3. 工作绩效数据、工作绩效信息和工作绩效报告的区别
  4. 查找-动态查找表-二叉排序树
  5. PHP开源AJAX框架
  6. (转)淘淘商城系列——搜索系统搭建
  7. 【UML】构件图Component diagram(实现图)(转)
  8. 我写了一个java实体类,implements了Serializable接口,然后我如何让serialversionUID自动生成...
  9. 判断是否是微信浏览器JavaScript代码
  10. HBase 参考指南 3.0 翻译活动期待大家的参与 | ApacheCN 1