python学习-数据类型
计算机处理的数据不单纯的指数字,计算机可以处理数字、文本、音频、视频等等各种数据,下面描述的是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学习-数据类型的更多相关文章
- python学习 数据类型之序列
一.序列(本文使用python3.5)############################################################# 列表.元组 字符窜都是序列#特点:#1 ...
- Python学习基础笔记(全)
换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...
- python学习第九讲,python中的数据类型,字符串的使用与介绍
目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- python学习笔记--数据类型
Life is short, You need Python! 霸气的口号! 今天我也开始学python了,毕竟不懂后端的前端不是好前端.之前有过‘世界上最好的语言’和JavaScript的学习经验. ...
- Python学习笔记(1)——Python的概述(Python的环境、变量、数据类型、基本运算)
Table of Contents 1. Python概述 1.1. Python基础知识 1.2. 运行环境 1.3. Python的格式 1.4. Python的变量. 2. Python的数据类 ...
随机推荐
- MATLAB学习(七)求解优化问题:线性规划 非线性规划 拟合与插值 多目标规划
Minf(x)=-5x1 -4x2 -6x3 x1 -x2 +x3 <=20 3x1 +2x2 +4x3 <=42 ...
- 转载:深入理解Spring MVC 思想
原文作者:赵磊 原文地址:http://elf8848.iteye.com/blog/875830 目录 一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.sp ...
- Python multiprocess模块(下)
主要内容:(参考资料) 一. 管道 二. 数据共享 数据共享是不安全的 三. 进程池 进程池的map传参 进程池的同步方法 进程池的异步方法 详解apply和apply_async apply_asy ...
- nexus私服库被误删如何恢复
恢复步骤: 1,登录nexus服务器,找到nexus安装目录(默认/usr/local/下): 2,找到sonatype-work/nexus/trash 下找到你删除的库: 3,copy到指定的so ...
- iptables基本命令到深入
1.关闭firewalld,安装iptables-server并启动服务 systemctl stop firewalld systemctl disable firewalld yun -y ins ...
- TensorFlow-cpu优化及numpy优化
1,TensorFlow-cpu优化 当你使用cpu版TensorFlow时(比如pip安装),你可能会遇到警告,说你cpu支持AVX/AVX2指令集,那么在以下网址下载对应版本. https://g ...
- mapreducer计算原理
mapreducer计算原理
- 使用JedisPool资源池操作Redis,并进行性能优化
一.使用方法 ----------------------------------------- private volatile static JedisPool pool = null; //本地 ...
- 手把手教你用vue-clic3搭建vue-element-admin项目
下载element-admin框架 点击该地址:https://github.com/PanJiaChen/vue-element-admin 用git clone https://github.co ...
- (5.13)mysql高可用系列——1主3从复制(SSL)
目录: [0]需求 目前使用Mysql数据库,100GB+数据量,需要实现1主3从环境. 需要实现SSL安全复制,同时需要测试异常宕机切换演练 [1]实验环境 数据库架构:主从复制,基于主库搭建3个从 ...