计算机处理的数据不单纯的指数字,计算机可以处理数字、文本、音频、视频等等各种数据,下面描述的是Python中可以直接使用和处理的基本数据类型。

    整数

Python可以处理任意大小的整数,跟java等语言整数区分int和long不一样,Python的整数就一种,可以是无限大小的正整数或者负整数。例如十进制就是5、1983、-26等,16进制使用0x前缀,例如0xfa98、0xb123等

    浮点数

浮点数也就是日常中常说的小数,只是因为使用科学计数法时小数点可以在任意位置,所以称浮点数更合适,浮点数写法也跟数学中一样,如1.85、-6.8,用科学计数法是10用e代替,如1.82x10^5就的写法就是1.82e5

浮点数的计算结果有时候是不精确的,有时候获得的结果是四舍五入之后的。

跟java相比不太一样的地方,java中整数之间做/运算是取整的意思,也就是所谓的地板除法。Python中提供了两个除法符号 / 和 // , / 的结果永远是浮点数(即使能够整除), // 的结果是取整,永远是整数,取余用%

>>> 9/3
3.0
>>> 10/3
3.3333333333333335
>>> 10//3
3
>>> 10%3
1

    字符串

字符串可以理解为一段文本,用单引号或双引号括起来,例如'asdf'和"asdf"表示的字符串内容是一样的,这种只有单引号或双引号一种的,引号不包含在字符串中,如果字符串中包含单引号或双引号,可以嵌套使用,例如

>>> print("I'am victor")
I'am victor
>>> print('I"am victor')
I"am victor

  或者使用转义字符,转义字符可以转义很多,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\,例如

>>> print("I'am \"victor\"")
I'am "victor"
>>> print("I'am \"victor\" \n I'am leaning Python \\\\")
I'am "victor"
I'am leaning Python \\

  使用过多的转移字符看起来很乱,Python还提供了一个渐变方法,在字符串前面加上 r 字符串就不会转义了

>>> print("I'am \"victor\"")
I'am "victor"
>>> print(r"I'am \"victor\"")
I'am \"victor\"

  还允许使用三个单引号或双引号直接将多行字符串原样输出,但是转义字符还是会转义,不想转义前面还是要加上r,'''XXX'''  """XXX""",例如

>>> print("""I'am \"victor\"
... I am
... leaning
... Python""")
I'am "victor"
I am
leaning
Python

  布尔值

布尔值只有True和False两个值,注意区分大小写

>>> (1==2)==True
False

  布尔值可以用and、or和not运算,这个运算规则跟其他语言一样,and运算是与运算,只有所有都为True,and运算结果才是True。or运算是或运算,只要其中有一个为True,or运算结果就是True。not运算是非运算,它是一个单目运算符,把True变成False,False变成True

>>> True and False
False
>>> True or False
True
>>> not True
False

  空值

Python中的空值用None表示,注意大小写,空值不是0也不是"",这种有意义的值并不是None,None是一个特殊的空值,含义跟java中的null一样

>>> 0  == None
False
>>>
>>> "" == None
False

  变量

变量在程序中就是用一个变量名表示,变量名必须是大小写字母、数字和_的组合,且不能用数字开头,变量用=赋值,注意一点Python是动态语言,跟java这类静态语言不太一样的地方就是动态语言更灵活,同一个变量可以赋值不同类型的值。

a = 2
print(a)
a = "abC"
print(a) #这个代码java会报错,因为两次赋值类型不一样,Python会正常执行后输出
2
abC

解释一下赋值过程,先猜猜下面的代码,输出的a和b值是什么?

a = "abc"
b = a
a = "def"
print("a =", a)
print("b =", b)

  代码执行后的输出结果是a = def    b = abc ,相信大部分人都能答对,下面简单介绍一下执行过程,第一行的时候解释器在内存分配了一个区域保存"abc"这个值,并把a这个变量指向"abc"所在的内存地址。第二行创建了一个变量b,并将a指向的地址赋给b,这样b也是指向了"abc"所在的内存地址。第三行又创建了一个"def"的内存区域,将a指向了"def"所在的内存地址,而这时b的指向并没有变化,所以执行后会输出这样的结果。

  常量

常量就是固定不变的数据,约定俗成常量名全部大写,这个不变是从业务上定义的不变,例如圆周率PI = 3.1415926,当然你一定要在代码中改变PI的值,也没人拦得住你。

python学习-数据类型的更多相关文章

  1. python学习 数据类型之序列

    一.序列(本文使用python3.5)############################################################# 列表.元组 字符窜都是序列#特点:#1 ...

  2. Python学习基础笔记(全)

    换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...

  3. python学习第九讲,python中的数据类型,字符串的使用与介绍

    目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...

  4. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  5. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

  6. python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍

    目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...

  7. python学习日记(基础数据类型及其方法01)

    数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...

  8. python学习笔记--数据类型

    Life is short, You need Python! 霸气的口号! 今天我也开始学python了,毕竟不懂后端的前端不是好前端.之前有过‘世界上最好的语言’和JavaScript的学习经验. ...

  9. Python学习笔记(1)——Python的概述(Python的环境、变量、数据类型、基本运算)

    Table of Contents 1. Python概述 1.1. Python基础知识 1.2. 运行环境 1.3. Python的格式 1.4. Python的变量. 2. Python的数据类 ...

随机推荐

  1. MATLAB学习(九)系统聚类

        >> X=rand(100,2); >> Y=pdist(X,'euclidean'); >> Z = linkage(Y,'average'); > ...

  2. Python3.x运行Python2.x代码报错 syntax error "Missing parentheses in call to 'print'

    #另外一种错误 SyntaxError: Missing parentheses in call to 'print'. Did you mean print( 查看代码,格式如下: print &q ...

  3. Java 8 新特性之 Stream 流基础体验

    Java 8 新特性之 Stream 流基础体验 package com.company; import java.util.ArrayList; import java.util.List; imp ...

  4. web页面找不到资源文件,报404,但是资源文件存在且路径没错

    如题 , 今天遇到这个问题,maven项目导入本地myeclipse,正常跑起来之后,在web端存在部分页面资源加载不进来. 但是项目资源确实存在,一开始以为是myeclipse开发环境搭建错误导致, ...

  5. python3使用tkinter之Menu坑

    添加菜单之后,下拉菜单的第一行是一条虚线,点击会在窗口的左上角独立显示下拉菜单,如下图所示: 去掉的方法是:创建文件菜单的时候,添加 tearoff=0参数 tearoff 有 0 和 1 两个值,分 ...

  6. python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令

    前置步骤: 下载一个绿色版的mysql数据库客户端连接工具 :http://wosn.net/821.html mysql平台为win7(以后会有CentOS上的) 学习目的: 掌握数据库的基本概念, ...

  7. php screw加密与破解

    一.破解工具之php-screw-brute 1.项目地址 https://github.com/securifybv/php-screw-brute 2.项目介绍 此脚本可以恢复/爆破php scr ...

  8. 强大的strace命令用法详解

    文章转自: https://www.linuxidc.com/Linux/2018-01/150654.htm strace是什么? 按照strace官网的描述, strace是一个可用于诊断.调试和 ...

  9. H5传奇源码,附带微信支付,商城系统,新增了元宝交易商城系统源码

    源码说明:传奇游戏是80年底的经典游戏,传奇源码,H5游戏源码下载,附带微信支付,商城系统,新增了元宝交易商城系统源码,内置很多任务,比如首冲任务,修复了很多BUG.[架设要求]游戏名称:H5传奇世界 ...

  10. stalstack

    Saltstack 是干什么的 saltstack 是一个开源异构平台基础设置管理工具 Saltstack 能干什么 如果是一个管理成千上百服务器的管理员,你会遇到场景 需要在每台服务器上面部署age ...