pyhon的6大基本数据类型
1.数字型(Number)
1.1 整型(int)
整型包括所有的正整数,负整数还有0。
在python中所有的整型数据全部默认采用十进制进行表示,但我们还可以手动表示其他进制的整型,具体表示如下:
# 表示十进制整型,不能使用0d来表示,python不支持这种写法
a = 100
# 表示二进制整型:
a = 0b100010
# 表示八进制整型:
a = 0o12333
# 表示十六进制整型:
a = 0x1010
1.2 浮点型(float)
浮点型包括所有的小数
在python中所有的浮点型有小数表示形式和科学计数法形式,具体表示如下:
# 小数形式表示浮点数
a = 1.214
# 科学计数法表示浮点数
a = 6.7e4 # 表示6.7*(10**4)
1.3 复数型(complex)
在python中所有的复数型也有两种表示方法,具体表示如下:
# 采用实数 + 虚数表示
a = 4+3j # 4表示实部,3j表示虚部,4表示实数,3表示虚数
# 使用complex表示
a = complex(56,-3) # 表示56-3j
2. 字符型(str)
用单引号或者三引号引起来的就是字符型,单引号引起来的字符型只能表示一行,而三引号引起来的可以表示多行,但在python字符型中存在一些特殊的有意义的字符,这些字符中含有转义字符,基本常用的有如下几个:
- \r 将后面的字符拉到当前行行首
- \n 换行
- \r\n 换行
- \ 转移\,使\变得无意义
为了解决在特殊的场景下防止转义字符进行转义,可以使用如下几种方法: - 元字符串,格式为r"字符串"
- 使用repr函数进行原型化输出,方法repr('字符串')
除了转义字符以外,字符型还有字符串格式化操作,比如我们在做一张明信片的时候需改设计一个模板,然后到时候只需要填入明信片信息就可以,因此只能通过字符串格式化的操作来进行操作,示例如下:
"""
首先介绍一下字符串格式化的基本占位符
%d:整型占位符
%f:浮点型占位符
%s:字符型占位符
基本语法:
'含有占位符的字符串' %(占位符1的内容,占位符2的内容...)
注意:在使用字符串格式化的时候,必须要保持占位符和填充内容的个数和数据类型一致,否则会发生报错
"""
name = '小明'
age = 18
phone = 13300000033
add = '山东省济南市某某区'
e_mail = '123456@qq.com'
hobby = '抓扫恼骚'
id_card = """
——————————————————————————————————————
个人明信片
姓名:%s
年龄:%d
电话:%d
家庭住址:%s
个人邮箱:%s
兴趣爱好:%s
——————————————————————————————————————
"""
print('id_card %(name, age, phone, add, e_mail, hobby)') # 打印输入的结果
'''
另外字符串具有不可修改,可获取,有序的特点,下面依次介绍字符串的每个特点
1. 可获取
在对字符串进行获取的时候可以使用索引或者切片
索引:在字符串中每一个字符都与一个数字想对应,而从左到右数字编号依次为0,1,2,3,4..,但在python中有一种特有的负数索引,从右到左数字编号依次为-1,-2,-3....
切片:索引只能够获取一个,但可以利用切片获取多个数据,语法为'字符串'[索引开始下标:索引结束下标:步长],具体看案例
```python
str1 = '0123456789'
# 获取4这个字符
str1[4] # 正序索引获取
str1[-6] # 反向索引获取
# 获取5以后的所有内容(包括5)
str1[5:] # 使用正向索引进行切片
str1[-5:] # 使用反向索引进行切片
# 获取5以前的所有内容(包括5)
str1[:6] # 明明上面利用下标5就能够获取到5这个字符,但为什么在这里要使用下标6呢?
str1[:-4]
# 获取所有的奇数
str1[1::2]
str1[-9::2]
# 获取15两个数字
str1[1:6:4]
str1[-9:-5:4]
# 获取所有数字
str1[:]
str1[0:]
str1[::]
在上面的案例中在获取5以前的所有内容包括5的时候,下标为什么使用6呢,答案就是在获取的时候在结束索引下标的值是取不到的
2. 不可修改
由于字符型是不可变的数据类型因此不可以进行修改,如
str1 = '124'
str1[-1] = 3 # 直接报错
3.有序
无论怎么获取字符串,顺序是不会打乱的,依次他是有序的
3. 列表(List)
用中括号括起来的元素就是列表,如[11,22,44,]
列表具有可修改,可获取,有序的特点
可修改
lt = [1,2,3,4,5]
lt[2] = 6
print(lt) # 结果[1,2,6,4,5]
4.元组
用小括号括起来的元素就是列表,如(11,22,44,),元组具有可获取,不可修改,无序的特点
元组一旦被定义就不能被修改,如果元组中只有一个元组,后面必须跟一个逗号,否则元素的数据类型就是原来的那一个元素的数据类型
# 判断下面的数据类型
(1,) # 元组
('s') # 字符串
([1,23,4,5]) # 列表
5. 集合(set)
只使用大括号括起来的就是集合,集合具有不可获取,无序,自动去重的特点
在定义一个空集合的时候,不能直接使用{},但是必须set()来定义一个空集合
6. 字典(dict)
只使用大括号括起来并且以键值对的形式存储的就是字典,比如{'k1':'v1','k2':'v2'},字典的特点是以键值对存储的数据,在python3.6之前,python中的字典是无序的,但是在python3.6之后,字典有序。
字典的键和集合中的值数据类型的要求是不可变数据,不能是可变类型
不可变数据主要有整型,字符型,元组,而可变的数据类型有列表,集合,字典
pyhon的6大基本数据类型的更多相关文章
- MS SQL大值数据类型varchar(max)、nvarchar(max)、varbinary(max)
在MS SQL2005及以上的版本中,加入大值数据类型(varchar(max).nvarchar(max).varbinary(max) ).大值数据类型最多可以存储2^30-1个字节的数据. 这几 ...
- [转帖]Oracle数据库lob大对象数据类型字段总结,值得收藏
Oracle数据库lob大对象数据类型字段总结,值得收藏 原创 波波说运维 2019-07-11 00:02:00 https://www.toutiao.com/i67108943269703357 ...
- Pyhon全栈之路----数据类型
1.定义时不需要像C语言一样加 ' int ' , 'char ' 等,直接写即可,解释器会直接自动识别数据类型.例: age = 22 (默认为数字类型) name = 'Alex ...
- mysql大文本数据类型的使用需要考虑实际情况
mysql数据类型简介(http://news.newhua.com/news1/program_database/2008/618/08618103911CD92HJ6CKI2I9I0AH5CGK1 ...
- 011、Java中将范围大的数据类型变为范围小的数据类型
01.代码如下 package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- 使用 hibernate 存取大对象数据类型(clob和blob)
数据库表如下: book表 id 该表的主键.number类型. photo 代表图书的图片,blob类型. description 图书的描述,clob类型. 使用 hibernate3 往 boo ...
- java8大基本数据类型
基本类型 字节数 位数 最大值 最小值 byte 1byte 8bit 2^7 - 1 -2^7 short 2byte 16bit 2^15 - 1 -2^15 int 4byte 32bit 2^ ...
- timeval的时间转换成毫秒之后多大的数据类型可以装下
struct timeval { long tv_sec; /*秒*/ long tv_usec; /*微秒*/ }; 秒的定义为long,为了防止溢出,转换成毫秒之后保存在long long中
- db2学习笔记--数据类型对表的影响
创建表的时为列选择合适的数据类型,可以提高数据库性能. 1.选择合适的数据类型,避免出现数据类型转换.例如日期,有人使用字符串来存放日期.时间戳,最后我们还要在程序中使用to_date做数据类型转换, ...
随机推荐
- CodeForces 1420E Battle Lemmings
题意 略. \(\texttt{Data Range:}1\leq n\leq 80\) 题解 首先考虑初始状态怎么算答案.很明显直接数满足的不好数,用总的减去不满足的还比较好做.注意到所有不满足的是 ...
- Python3网络学习案例四:编写Web Proxy
代理服务器的定义和作用请走百度百科~ 1. Web Proxy的实现思路 这是基于上一篇"编写Web Server"写的,主要逻辑见下图: 我们要写的就是中间的Web Proxy部 ...
- numpy数组
一.数组创建 基础数组 1.array() array函数可以创建一维或多维数 一维数组 1.arange(起始值,终值,步长) 2.linspace(起始值,终值,元素个数) --创建等步长的数组 ...
- STM32CubeIDE下载安装-GPIO基本配置操作-Debug调试(基于CMSIS DAP Debug)
1.在ST官网下载STM32CubeIDE而不是STM32CubeMX,并且STM32CubeIDE是免费的.(STM32CubeIDE不支持中文路径,不然编译会出错) 2.如果你用的是keil开发环 ...
- CF957D Riverside Curio
dp+预处理 dp[i]表示第i天时的水位线有多少条, 然后你会发现这个dp是有后效性的,当第i天的m[i]>dp[i-1]时就要修改之前的dp值 因此我们预处理出每一天的至少要多少条水位线,记 ...
- Python中的小括号()、中括号[]、花括号{}区别
Python中最常见括号的区别: 在Python语言中最常见的括号有三种,分别是:小括号().中括号[].花括号{}:其作用也不相同,分别用来代表不同的Python基本内置数据类型. Python中的 ...
- Java集合系列-HashSet
原创文章,转载请标注出处:https://www.cnblogs.com/V1haoge/p/10755431.html 一.概述 HashSet是基于哈希实现的set集合,其实它底层是一个value ...
- 常用DOS指令
Windows的DOS命令,其实是Windows系统的cmd命令,它是由原来的MS-DOS系统保留下来的. MS-DOS称为微软磁盘操作系统,最开始从西雅图公司(蒂姆·帕特森)买过来 MS-DOS系 ...
- Zabbix实现电话告警通知的配置方法分享
如果要讨论下当下热门的监控系统,我想zabbix应该能够占有自己的一席之地,拥有不小的话语权吧.然而身为一名苦逼的运维,为了不错过重大的告警信息,就需要配置个[电话告警]来进行最快速的通知. zabb ...
- 记录一次读取hdfs文件时出现的问题java.net.ConnectException: Connection refused
公司的hadoop集群是之前的同事搭建的,我(小白一个)在spark shell中读取hdfs上的文件时,执行以下指令 >>> word=sc.textFile("hdfs ...