四、python中表示组的概念与定义
现实世界中总是存在一组一组的事物,如俄罗斯方块、游戏中的技能、世界杯总决赛(8个小组,每组4个队)
一、python中如何表示“组”的概念
1、列表
1)定义
[1,2,3,4,5]
type[1,2,3,4,5]
2)特性
- 组成列表的元素可以是不同的数据类型
如['hello','world',1,9,True,False]
- 列表的元素可以是列表,即嵌套列表。在其他语言也成为二维数组
如[[1,2],[3,4],['a','b']]
3)基本操作
- 访问某个元素——下标
- 访问某些元素——切片
- 更改元素的值——下标赋值
- 追加——append()
- 合并——+
二、元组
1、定义
(1,2,3,4,5)
2、特性
1)元素可以是不同的类型
2)元素可以是元组,即嵌套元组
3、基本操作
1)访问元素
tuple_a[0]
tuple_a[0:2]
2)运算
tuple_a+tuple_b
tuple_a*3
4、元组与列表的区别
列表:可更改元素的值
元组:不可更改元素的值
5、python中的一个习惯
int 表示 整型
str 表示 字符串
list 表示 列表
tuple 表示 元组
6、一个奇怪的现象
>>> type((1))
<type 'int'>
>>> type(('hello'))
<type 'str'>
原因是(1)、('hello')中的()表示的是数学运算,类似(1+1)*2
那么,如何定义只有一个元素的元组?
(1,)
如何定义一个空元组?
()
>>> type((1,))
<type 'tuple'>
>>> type(())
<type 'tuple'>
三、序列总结
关键是序列的“序”
1、python中对“组”的学术定义是“序列”
2、str、list、tuple都是序列
3、序列共有的操作
1)访问元素
>>> 'hello world'[0]
'h'
2)切片
>>> 'hello world'[0:5]
'hello'
>>> 'hello world'[0:-1]
'hello worl'
>>> 'hello world'[0:-7]
'hell'
3)运算+*
>>> 'hello'+'world'
'helloworld'
>>> 'hello'*3
'hellohellohello'
4)是否包含某个元素 in /not in
>>> 'h' not in 'hello world'
False
>>> 'h' in 'hello world'
True
5)获取长度 len()
>>> len([1,2,3,4,5])
5
>>> len('hello world')
11
6)min max最值
>>> min([1,3,7])
1
>>> max('hello world')
'w'
4、字符串中的字母可比较大小,根据ASCII码比较
ord()查看ASCII码
>>> ord(' ')
32
>>> ord('d')
100
>>> ord('w')
119
五、set集合
重要特性“无序”
1、定义
{1,2,3,4}
>>> type({1,2,3,4})
<type 'set'>
2、特性
1)无序
2)不重复
>>> {1,2,1,2,1,2}
set([1, 2])
3、操作
1)len()获取长度
2)in、not in包含
3)运算
- 差集
& 交集
| 并集/合集
4)如何表示一个空集合
set()
>>> type(set())
<type 'set'>
>>> len(set())
0
>>> type({})
<type 'dict'>
六、字典
1、定义
{key1:value1,key2:value2}
字典的本质是集合,无序
字典和集合的区别
1)元素构成不同:dict是key-value对,set的元素是str、int等基本数据类型
2、特性
1)元素是键值对
2)本质是集合,无序
3、操作
1)通过key访问value
dict_a['key1']
2)key不能重复,重复的元素会被删除
>>> {'name':'a','name':'b','name':'c'}
{'name': 'c'}
>>> {'name':'a','name':'b','name':'a'}
{'name': 'a'}
>>> {'name':'a','name':'b','name':'','sort':1}
{'name': '', 'sort': 1}
3)value可以是任意的数据类型,甚至dict,即字典可嵌套
4)key必须是不可变的数据类型
int、str、bool、tuple不可变的类型
list可变的类型
5)空字典如何定义?{}
>>> type({})
<class 'dict'>
2、特性
3、操作
四、python中表示组的概念与定义的更多相关文章
- Python(二) 表示‘组’的概念与定义
现实世界中总存在一组一组的事物, 一.列表的定义 type(['hello','world',1,9,True,False]) = <class 'list'> type([[1,2,3, ...
- Python学习笔记整理(四)Python中的字符串..
字符串是一个有序的字符集合,用于存储和表现基于文本的信息. 常见的字符串常量和表达式 T1=‘’ 空字符串 T2="diege's" 双引号 T3=""&quo ...
- 四 python中关于OOP的常用术语
抽象/实现 抽象指对现实世界问题和实体的本质表现,行为和特征建模,建立一个相关的子集,可以用于 绘程序结构,从而实现这种模型.抽象不仅包括这种模型的数据属性,还定义了这些数据的接口. 对某种抽象的实现 ...
- Python核心技术与实战——十四|Python中装饰器的使用
我在以前的帖子里讲了装饰器的用法,这里我们来具体讲一讲Python中的装饰器,这里,我们从前面讲的函数,闭包为切入点,引出装饰器的概念.表达和基本使用方法.其次,我们结合一些实际工程中的例子,以便能再 ...
- Neo4j:图数据库GraphDB(四)Python中的操作
本文总结下Python中如何操作Neo4j数据库,用到py2neo包,Pip install 一下. 1 连接neo4j数据库:跟其它数据库一样,操作前必须输入用户名和密码及地址连接一下. from ...
- [19/09/19-星期四] Python中的字典和集合
一.字典 # 字典 # 使用 {} 来创建字典 d = {} # 创建了一个空字典 # 创建一个保护有数据的字典 # 语法: # {key:value,key:value,key:value} # 字 ...
- [19/10/16-星期四] Python中的文件操作
一.打开文件 # open(file, mode='r', buffering=-1, encoding_=None, errors=None, newline=None, closefd=True, ...
- python中的os,shutil模块的定义以及用法
# os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为 '\\' os.name 字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Uni ...
- Python3(二) 表示‘组’的概念与定义
现实世界中总存在一组一组的事物, 一.列表的定义 type(['hello','world',1,9,True,False]) = <class 'list'> type([[1,2,3, ...
随机推荐
- View 视图动画基础
- UVA - 11464 Even Parity 【暴力枚举】
题意 给出一个 01 二维方阵 可以将里面的 0 改成1 但是 不能够 将 1 改成 0 然后这个方阵 会对应另外一个 方阵 另外一个方阵当中的元素 为 上 下 左 右 四个元素(如果存在)的和 要求 ...
- 跟我一起学Git (十) Patches【转】
本文转载自:http://cs-cjl.com/2014/05/05/learn_git_with_me_10 Git实现了以下三条用于交换patch的命令: git format-patch 用于创 ...
- 51nod 40分算法题
1737:见前2篇随笔. 1677:题意:给定一个n节点树,一个整数k,n个节点任意选k个出来,对于每一种选择方案,ans累加上使这k个点联通的最小边数,输出ans%1e9+7. 一句话题解:考虑每一 ...
- Starting MySQL.. ERROR! The server quit without updating PID file
版权声明:本文为博主原创文章,未经博主允许不得转载. 注意:本文出自 “阿飞”的博客 ,如果要转载本文章,请与作者联系! 并注明来源: http://blog.csdn.net/faye0412/ar ...
- Global 全局样式基本设置
1. 默认字体设置,边距设置 html { font-family: sans-serif; /* 默认字体 */ font-size: 100%; /* 在用户调整窗口大小时,字体大小做相应调整. ...
- Redis实现求交集操作结果缓存的设计方案
Redis的集合操作 实话说,Redis提供的集合操作是我选择它成为内存数据库的一个主要理由,它弥补了传统关系型数据库在这方面带来的复杂度,使得只需要简单的一个命令就可以完成一个复杂SQL任务,并且交 ...
- source和sh执行脚本时的差异
在CentOS7下,有如下脚:sh02.sh. 1 用sh或者bash执行 先执行echo $firstname $lastname 再执行 sh sh02.sh 最后执行 echo $firstna ...
- Jenkins中,执行py文件,python找包的路径(找不到自定义包的问题解决)
问题:工程下自定义的包,python在执行时经常找不到包 python找包的路径:python安装路径下的lib包和PYTHONPATH下的包 可以使用[sys.path]打印出python找 ...
- java枚举类型的优势在哪里?--一个实例
最近在做一个项目,其中涉及到一组操作,命名为: 1. "add"; 2. "logicDel" 3. "physicDel" 4. &quo ...