列举python的5个数据类型_python公开课|新公布的5个python核心数据类型,这些细节你难道还不不知道吗...
【摘要】在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多的python学习者关注python就业方向问题,今天环球网校的小编就来和大家讲讲python核心数据类型。
python核心数据类型包括数字、字符串、元组、列表、字典、文件、集合
字符串、元组是不可变的,列表、字典是可变的
1、python核心数据类型——字符串
字符串是用来记录文本信息的,可以把字符串看作是单个字符组成的序列,其他类型的序列还包括列表和元组。
S = 'python'
print(len(S)) # 6
print(S[0]) # p
print(S[:])# python
print(S[1:])# ython
print(S[:-1])# pytho
print(S[1:3])# yt
字符串作为序列也支持加号合并操作
S = 'python'
print(S + 'is very easy') # python is very easy
print(S * 2) # pythonpython
字符串的find方法是对子字符串进行查找,存在的情况下将返回子字符串的索引,不存在的情况下将返回-1,而replace方法将会对全局进行搜索和替换
>>> s = 'abc'
>>> print(s.find('b'))
1
>>> print(s.find('d'))
-1
>>> print(s.replace('ab','de'))
dec
>>>
>>> print(s.upper())
ABC
>>> print(s.isalpha())
True
>>>
字符串大小写转换,upper()方法转大写,lower方法转小写,capitalize()方法把首字母转大写,
title()方法把每个单词的第一个字母大小,其余小写
s = 'aBc'
>>> print(s.upper())
ABC
>>> print(s.lower())
abc
>>>
>>> s = 'www.baidu.com'
>>> print(s.capitalize())
>>> print(s.title())
>>>
字符串支持格式化的高级替代操作,可以以一个表达式的形式和一个字符串方法调用形式使用
>>> print('%s like eat %s' % ('I','egg!'))
I like eat egg!
>>> print('{0} like eat {1}'.format('I','egg!'))
I like eat egg!
>>>
2、python核心数据类型——列表
列表是一个任意类型的对象的位置相关的有序集合。前面讲到字符串、列表都是序列的一种,两者唯一的区别是字符串不可变,而列表大小是可变的,所以能同样对列表进行索引、切片
>>> L = [123,'PYTHON',1.23]
>>> print(L[0])
123
>>> print(L[2])
1.23
>>> print(L[:-1])
[123, 'PYTHON']
>>> print(L[:])
[123, 'PYTHON', 1.23]
>>> print(L[1:3])
['PYTHON', 1.23]
>>>
列表也可以使用append()方法添加元素,使用pop()方法删除元素,pop()方法不带参数时默认删除最后一个元素,带参数时删除指定索引的元素
>>> L = [123,'PYTHON',1.23]
>>> L.append('java')
>>> print(L)
[123, 'PYTHON', 1.23, 'java']
>>> L.pop(1)
PYTHON'
>>> print(L)
[123, 1.23, 'java']
>>>
列表虽然没有固定大小,但不允许引用不存在的元素,超出列表末尾之外的引用会导致错误
>>> L = [123,'PYTHON',1.23]
>>> L[11]
Traceback (most recent call last):
File "", line 1, in
IndexError: list index out of range
>>>
3、python核心数据类型——嵌套
python核心数据类型的一个优秀的特性是它可以支持任意的嵌套,例如:一个列表包含一个字典,并在这个字典中包含另一个列表;python中的多维数组,一个嵌套列表的列表可以完成基本操作
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> print(M[1])
[4, 5, 6]
>>> print(M[1][2])
6
>>>
4、python核心数据类型——列表解析
列表解析能够处理矩阵这样结构的强大工具,矩阵是按照行进行存储的,所以通过简单的索引即可获取行,使用列表解析可以获取列,下面例子是获取第三列
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> colum2 = [row[2] for row in M]
>>> print(colum2)
[3, 6, 9]
>>>
列表解析源自集合的概念,它是一种通过对序列中的每一项运行一个表达式来创建一个新列表的方法,
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> c = [row[2] + 1 for row in M]
>>> print(c)
[4, 7, 10]
>>> c = [row[2] for row in M if row[2] % 2 ==0] #取第二列中为偶数的元素
>>> print(c)
[6]
>>>
>>> diag = [M[i][i] for i in [0,1,2]] #取对角线元素
>>> print(diag)
[1, 5, 9]
>>>
括号中的解析语法也可以用来创建产生所需结果的生成器
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> G = (sum(row) for row in M)
>>> print(next(G))
6
>>> print(next(G))
15
>>> print(next(G))
24
>>>
内置函数map也可以做类似的事情,产生对各项运行一个函数的结果,在python3中,将其包装到列表中,会使其返回所有值
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> print(list(map(sum,M)))
[6, 15, 24]
>>>
在python3中,解析语法也可以用来创建集合和字典
>>> M = [[1,2,3],[4,5,6],[7,8,9]]
>>> G = {sum(row) for row in M}
>>> print(G)
{24, 6, 15}
>>> F = {i : sum(M[i]) for i in range(3)}
>>> print(F)
{0: 6, 1: 15, 2: 24}
>>>
5、python核心数据类型——字典
字典通俗的理解就是key-value 关系,通过key值找对应的value,内置的sorted函数可以对字典的key排序,
>>> dic = {'a':2,'c':1,'b':3}
>>> for key in sorted(dic):
...
... print(key,'=>',dic[key])
...
a => 2
b => 3
c => 1
>>>
获取不存在的键会出现错误,但可以通过if进行测试判断
>>> dic = {'a':2,'c':1,'b':3}
>>> print(dic['d'])
Traceback (most recent call last):
File "", line 1, in
KeyError: 'd'
>>>
>>> dic = {'a':2,'c':1,'b':3}
>>> if 'd' not in dic:
... print("missing")
...
missing
{'a': 2, 'c': 1, 'b': 3}
>>> value = dic['d'] if 'd' in dic else 0
>>> print(value)
0
>>>
>>> value = dic['b'] if 'b' in dic else 0
>>> print(value)
3
>>>
sort 与sorted区别 sort会改变原来的,而sorted不会改变原来的,相当于新建了一个
>>> list = [0,3,5,-1,4,6]
>>> list.sort()
>>> print(list)
[-1, 0, 3, 4, 5, 6]
>>> list = [0,3,5,-1,4,6]
>>> sorted(list)
[-1, 0, 3, 4, 5, 6]
>>> print(list)
[0, 3, 5, -1, 4, 6]
基于key值的排序
>>> list = [(2,'bob',88),(4,'mary',99),(1,'make',77)]
>>> list.sort()
>>> print(list)
[(1, 'make', 77), (2, 'bob', 88), (4, 'mary', 99)]
>>> list = [(2,'bob',88),(4,'mary',99),(1,'make',77)]
>>> list.sort(key = lambda x:x[2])
>>> print(list)
[(1, 'make', 77), (2, 'bob', 88), (4, 'mary', 99)]
reverse=False为升序排序;reverse=True为降序排序
>>> list = [0,3,5,-1,4,6]
>>> list.sort(reverse=False)
>>> print(list)
[-1, 0, 3, 4, 5, 6]
>>> list.sort(reverse=True)
>>> print(list)
[6, 5, 4, 3, 0, -1]
>>>
以上就是有关于python核心数据类型的全部内容,小编希望大家所学的python知识可以用在自己的工作领域中,毕竟作为一个应用类的技能,最终还是要应用在实际领域中才能发挥它的作用,环球网校的小编在这里祝大家学有所成,并彻底掌握python的使用方法。
列举python的5个数据类型_python公开课|新公布的5个python核心数据类型,这些细节你难道还不不知道吗...相关推荐
- python的字符串包括哪些_python公开课|Python字符串包含什么,我们应该怎么用
[摘要]在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多的python学习者关注py ...
- python列表添加元素、输出_python公开课|Python列表添加元素的方法可是python的基础之一,如果不会怎么行呢...
[摘要]在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多的python学习者关注py ...
- python的功能及特点_python公开课|你必须知道的,这些实用的Python功能和特点!
[摘要]在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行业之中,并被大家所熟知,所以也有越来越多的学习者关注实用的Python ...
- python与机械教育初探_Python公开课-机械学习之手写识别
授课讲师 讲师尹强 职务高级讲师.项目经理 多年互联网开发经验与授课经验,曾参与某知名家具电商网站.车友商城.物流系统的开发设计,善于使用多种技术解决技术问题和优化网站的性能和提高网站速度,开发经验丰 ...
- python具体应用过程_python公开课|Python for循环的具体应用就是python流程控制的核心,想学会就来看看...
[摘要]在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多的python学习者关注py ...
- python 公开课_python公开课视频(11~20)
Python基础教程视频教程 各集内容简介 通俗易懂,语言简练,保证入门. 11. Python基础教程视频教程 第 11 集 Python的分支语句if基础 本集主要讲述Python条件分支语句if ...
- python第一个公开发行版_Python基础篇【第一篇】:python入门
python 简介 python是一种解释型.面向对象.改动数据类型的高级程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. python是纯粹的自由 ...
- python数据结构算法 北京大学_北京大学公开课《数据结构与算法Python版》
之前我分享过一个数据结构与算法的课程,很多小伙伴私信我问有没有Python版. 看了一些公开课后,今天特向大家推荐北京大学的这门课程:<数据结构与算法Python版>. 课程概述 很多同学 ...
- python中提取几列_自己录制的公开课视频中提取字幕(python+opencv+Tesseract-OCR)
最近在mooc上看了一个公开课:职场英语,用来学习在找工作时或者工作中用到的英语交流技巧,非常不错.由于自己听力不是很好,有的字幕中的单词不认识,并且想记下来便于以后学习.所以想把公开课中的字幕都记录 ...
最新文章
- egret发布的HTML5项目怎么打开,Egret引擎开发指南之发布项目
- el-tree设置某节点不能折叠_如何设置动画角色
- tcpdump命令---Linux学习笔记
- via logo html,HTML5 Audio Description (via screenreader)
- 【转】java反射--注解
- Python操作文件目录
- 相信阿里只会PPT的“假专家”,随意做数字化转型,活该失败
- C++中string::find()函数和string::npos函数的使用
- Java实现进制转换方法汇总
- 2022 年度杭州未来科技城数字经济人才编程大赛
- 国际化之货币符号显示
- excel单元格内容拆分_excel软件应用:如何妙用Word拆分单元格数据
- 街头立体画的创作过程
- matlab多项式计算题目,MATLAB数据分析与多项式计算-习题答案
- 如何看待阿里云要做“全球产业AI的拓荒者”?
- JDBC之MySQL的URL
- 对象和函数对象有什么区别?
- JS上传图片时获取图片的尺寸
- Matlab进阶绘图第5期—风玫瑰图(WindRose)
- 使用Fluorine实现Flash与.NET通信
热门文章
- MySql和Sql Server语法和关键字区别
- STM32中断优先级的管理(NVIC)
- linxu其他用户登录mysql_Linux系统的MySQL用户如何开启远程登录权限
- vista下载_Vista和视图在游戏设计中的功能
- shields 徽标_徽标不够用时如何设计应用程序图标
- 案例研究:设计与方法_如何进行1小时的重新设计(案例研究)
- mongodb数组字段prefix匹配返回
- Debian 9.6.0 + OpenMediaVault 4.x : U盘作系统盘时遇到的问题
- MySQL服务器硬件和操作系统调节
- Cactiz中文版安装使用