返回顶部
首页 > 资讯 > 后端开发 > Python >python(3)字典及列表
  • 468
分享到

python(3)字典及列表

字典列表python 2023-01-31 05:01:18 468人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

列表list:打了激素的数组   数组是只能存储同一种数据类型的结构; 数组: scores[43] = [12, 12.0, "hello"] 元组tuple # 定义列表 li = [1, 1.0, "westos", (1,2,3,

列表list:打了激素的数组

   数组是只能存储同一种数据类型的结构;

数组: scores[43] = [12, 12.0, "hello"]

元组tuple
# 定义列表
li = [1, 1.0, "westos", (1,2,3,4), [1,2,3,4]]
# 定义元组

t = (1, 1.0, "westos", (1,2,3,4), [1,2,3,4])

输出:

[1, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4]]

(1, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4])
# 元组是不可变数据类型,不能修改元素;
#t[0] = 11
# 列表是可变数据类型,可以修改元素;
   li[0] = 13
   li:
   [13, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4]]
分析列表的特性(与元组对比)
索引In [9]:
print li
# 正向索引
li[0]
# 反向索引
li[-1]
# 拿出列表最后一个元素, 最后一个元素是列表, 再拿出列表的第三个元素,如下 :
li[-1][2]
[13, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4]]
3
切片
li
# 去掉列表的第一个元素
li[1:]
# 逆序显示
li[::-1]
[[1, 2, 3, 4], (1, 2, 3, 4), 'westos', 1.0, 13]
重复, 连接
li * 2
# 不建议这样连接两个列表,后面有效率更高的方法 ;
li1 = ["westos", "new year"]
li+li1
[13, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4], 'westos', 'new ye
ar']
成员操作符
print li
print 13 in li
print 13 not in li
[13, 1.0, 'westos', (1, 2, 3, 4), [1, 2, 3, 4]]
True
False
列表的增删改查

# ip 白名单
allow_ip = ["172.25.254.1","172.25.254.3", "172.25.254.26" ]
print "追加元素到列表的最后:"
allow_ip.append("172.25.254.250")
print allow_ip
print
print "增加元素到列表的指定位置:"
allow_ip.insert(0, "192.168.1.253")
print allow_ip
print
# iterable 代表可迭代的;
# 目前学习的可迭代对象有 : str, list, tuple
print "增加多个元素到列表最后:"
allow_ip.extend(["172.25.254.45", "172.25.56.21"])
print allow_ip
追加元素到列表的最后:
['172.25.254.1', '172.25.254.3', '172.25.254.26', '172.25.254.25
0']
增加元素到列表的指定位置:
['192.168.1.253', '172.25.254.1', '172.25.254.3', '172.25.254.2
6', '172.25.254.250']
增加多个元素到列表最后:
['192.168.1.253', '172.25.254.1', '172.25.254.3', '172.25.254.2

6', '172.25.254.250', '172.25.254.45', '172.25.56.21']

# 通过列表的索引,对列表某个索引值重新赋值;
allow_ip[0] = "192.168.1.1"
print allow_ip
['192.168.1.1', '172.25.254.1', '172.25.254.3', '172.25.254.26',
'172.25.254.250', '172.25.254.45', '172.25.56.21']

buy = ["apple", "computer","apple"]
# 统计某个元素在列表中出现的次数 ;
print buy.count("apple")
# 找到某个值在列表中的索引值
print buy.index("computer")
2
1

In [58]:
# 删除列表中遇到的第一个 value 值;
buy.remove("apple")
print buy
# 删除列表中第 i 个索引值;
del buy[0]
print buy
# 删除除了第一个元素之外的其他索引值
del buy[1:]
# 删除列表对象
del buy
['computer', 'apple']
['apple']In [3]:
li = [1,2,45,23,21, 45]
# 删除指定索引对应的值,默认是最后一个元素 ;
li.pop()
print li
# 删除列表的第一个索引 ;
li.pop(0)
[2, 45, 23, 21]
其他的排序及逆转
# 排序,如果说都是数字,按照数字大小排序 ;
# 是字母的话,按照 ASCII 码来排序;
# **** 如何查看对应的 ASCII 码 ? ord('a')
li = [12, 34, 56, 8]
li.sort()
print li
# 逆转; li[::-1]
li.reverse()
print li
[8, 12, 34, 56]
[56, 34, 12, 8]



字典(dict)
字典创建:
1)赋值创建字典
2)通过工厂函数创建字典
# 赋值创建字典 , key-value , 键值对
d = {"key1":"value1", "key2":"value2"}
print d
{'key2': 'value2', 'key1': 'value1'}
In [2]:
services = {"ssh":22, "ftp":[20,21], "Http":[80, 8080]}
print services
{'ftp': [20, 21], 'http': [80, 8080], 'ssh': 22}
In [3]:
# 通过工厂函数创建字典
userinfo = dict(user1="123", user2="456", user3 ="789")
print userinfo
{'user2': '456', 'user3': '789', 'user1': '123'}
In [14]:
# 通过字典的 fromkeys 方法创建字典,所有元素有一个默认值;
# 如果没有指定默认值,默认为 None;
print {}.fromkeys("hello")
# 给每个元素设置默认值为 "123";
print {}.fromkeys(["user1", "user2", "user3"], "123")
{'h': None, 'e': None, 'l': None, 'o': None}
{'user2': '123', 'user3': '123', 'user1': '123'}


分析字典的特性(跟元组和列表比较)
字典不能索引和切片,因为字典是无序的数据类型;
字典不支持重复和连接;
字典支持成员操作符: 判断字典的key值是否在字典中存在; in, not in字典的增删改查

一 增

字典名[key] = value
d.update(a=1, b=2)
d.update({'a':1, 'b',2})
d.setdefault('a', 1)
** 重点: setdefault 和 update方法的不同
services = {"ftp":[20,21]}
# 通过字典名 [key]=value, 将 key-value 添加到字典中 ;
services['http'] = [80, 8080]
print services
{'ftp': [20, 21], 'http': [80, 8080]}
# update 方法实现添加: key 存在,覆盖 value 值, 否则,添加
services = {"ftp":[20,21]}
services1 = {'http':[80,8080]}
# services.update(services1)
# print services
# 更建议使用
services.update(http=[80,8080], ftp=22)
print services
{'ftp': 22, 'http': [80, 8080]}
# setdefault 实现添加: key 存在,不覆盖 value 值, 否则,添加
services = {"ftp":[20,21]}
services1 = {'http':[80,8080]}
services.setdefault("ftp", 22)
print services
{'ftp': [20, 21]}

二 改


字典名[key]=value
d.update({'a':2, 'b':3})
d.update(a=2, b=3)

三 查:


services = {'ftp': 22, 'http': [80, 8080]}
# 查看 key 值
services.keys()
services.viewkeys()
services.iterkeys()
# 给 key 起名字
# 查看 value 值
services.values()
# 查看 key-value 键值对
services.items()
[('ftp', 22), ('http', [80, 8080])]
# 查看 key 是否存在 ;
services.has_key('ftpp')
# 查看指定 key 对应的 value 值;如果 key 不存在,不报错; 如果存在,返回 value 值;
# services['ftp'] 如果 key 不存在,直接报错;
services.get('ftpp')

四 删


d.pop(key) 删除指定 key 的字典元素;
d.popitem() 随机删除字典的 key-value 元素 ;
del d[key] 删除指定 key 的字典元素;
d.clear() 清空字典元素
循环遍历字典
In [41]:
for i,j in services.items():
print i,j
ftp 22
http [80, 8080]
In [43]:
# 默认情况下遍历字典的 key 值;
for i in services:
print i
ftp
http


字典应用
应用1: 通过字典实现case语句
目前python不支持case语句;
实现case语句的两种方式:
if...elif...elif...else...
字典实现In [ ]:
# if...elif...elif...else... 实现:
#coding:utf-8
"""
# 实现四则运算
- 用户分别输入第一个数字,运算操作符,第三个数字;
- 根据用户的运算操作打印出运算结果;
"""
from __future__ import division
num1 = input()
ope = raw_input()
num2 = input()
# case 语句
if ope == "+":
print num1+num2
elif ope == "-":
print num1-num2
elif ope == "*":
print num1*num2
elif ope == "/":
print num1/num2
else:
print "error operator"In [ ]:
# 字典实现 case 语句
#coding:utf-8
"""
# 实现四则运算
- 用户分别输入第一个数字,运算操作符,第三个数字;
- 根据用户的运算操作打印出运算结果;
"""
from __future__ import division
num1 = input()
ope = raw_input()
num2 = input()
d = {
"+":num1+num2,
"-":num1-num2,
"*":num1*num2,
"/":num1/num2,
}
if not ope in d:
print "error operator"
else:
print d[ope]

--结束END--

本文标题: python(3)字典及列表

本文链接: https://lsjlt.com/news/189028.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python(3)字典及列表
    列表list:打了激素的数组   数组是只能存储同一种数据类型的结构; 数组: scores[43] = [12, 12.0, "hello"] 元组tuple # 定义列表 li = [1, 1.0, "westos", (1,2,3,...
    99+
    2023-01-31
    字典 列表 python
  • python列表、元组、字典
    1.列表列表是由一序列特定顺序排列的元素组成的。可以把字符串,数字,字典等都可以任何东西加入到列表中,列表中的元素之间没有任何关系。列表也是自带下标的,默认也还是从0开始。列表常用方括号表示,即:[],元素用逗号隔开。例子:a = ["hu...
    99+
    2023-01-31
    字典 列表 python
  • python 列表 字典转json
    一、Dictionary 转为JSON 将dict转为JSON,这里利用包json import json aItem = {} aItem["id"] = "2203" aItem["title"] = "title" aItem["...
    99+
    2023-01-31
    字典 列表 python
  • Python 列表、元组、字典及集合操作
    一、列表 列表是Python中最基本的数据结构,是最常用的Python数据类型,列表的数据项不需要具有相同的类型 列表是一种有序的集合,可以随时添加和删除其中的元素 列表的索引从0开始 1、创建列表 >>> lis...
    99+
    2023-01-30
    字典 操作 列表
  • 9. python 列表、元组、字典
    1.列表a = ['a', 'b', 'c', 'abc']## append  末尾追加a.append('hello')print (a)['a', 'b', 'c', 'abc', 'hello']## pop 末尾删除a.pop(...
    99+
    2023-01-31
    字典 列表 python
  • python之列表、元组、字典
    1描述 打了激素的数组数组是只能存储同一数据类型的结构列表:可以存储多数数据类型的数组 2 定义列表: 元组和列表的不同:元组是不可变对象而列表是可变对象 3 列表的特性: 1 索引 分为前向索引、反向索引和多重索引 2...
    99+
    2023-01-31
    字典 列表 python
  • python-字典与列表学习
    #字典练习 def print_dict(): contect_file = 'contect_list.txt' f = file(contect_file) #读取 contect_dic = {} ...
    99+
    2023-01-31
    字典 列表 python
  • Python中优化列表和字典
    Python中优化列表和字典,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在循环内代码:@timeit def append_inside_loop(lim...
    99+
    2023-06-16
  • Python 列表&元组&字典&集合
    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片、合并、删除等操作 可通过索引来向指定位置插入元素 可通过pop()方法删除末尾元素,pop(索引...
    99+
    2023-01-30
    字典 列表 Python
  • python列表,元祖,字典详解
    列表:    基础数据类型,可含有大量数据,可存储各种数据类型    1,索引切片    与字符串一样    2,增删改查,以及其他操作        增        append 追加          insert  列表.inser...
    99+
    2023-01-31
    元祖 字典 详解
  • 怎么加速Python列表和字典
    本篇内容主要讲解“怎么加速Python列表和字典”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么加速Python列表和字典”吧!我们先编写一个装饰器函数来计算函数的执行时间,方便测验不同代码的...
    99+
    2023-06-16
  • python字典和列表嵌套用法
    本篇内容主要讲解“python字典和列表嵌套用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python字典和列表嵌套用法”吧!python中字典和列表的使用,在数据处理中应该是最常用的,这两...
    99+
    2023-06-20
  • Python - 列表与字典相互转换
    字符串转列表s = 'abc'a = list(s)['a','b','c']列表转为字符串''.join(a)字符串转换为元组s='abc't = tuple(s)元组转换为字符串''.join(t)列表转换为元组l = ['a','b'...
    99+
    2023-01-31
    字典 列表 Python
  • 0428(字典,列表,循环)
     1.使用一个字典来存储学生的信息,包括名、姓、年龄和居住的城市。 该字典应包含键first_name 、last_name 、age 和city 。通过循环录入3个学生信息,存储到列表中,并使用循环完成每个人具体信息的打印 # st...
    99+
    2023-01-31
    字典 列表
  • Python中元组,列表,字典的区别
    Python中,有3种内建的数据结构:列表、元组和字典。 1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。列表中的项目。列表中的项目应该包括在方括号中,这样...
    99+
    2022-06-04
    中元 字典 区别
  • python如何实现字典键值列表
    这篇文章主要介绍了python如何实现字典键值列表,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。字典键值列表##不推荐 for k...
    99+
    2024-04-02
  • Python学习笔记8——列表、字典、元
    参考书籍:《Learning_Python_5th_Edition.pdf》,一本英文书呢,我上传到百度网盘吧,请点击这里,密码是:kym3 Lists 列表 The Python list object is the most gene...
    99+
    2023-01-30
    字典 学习笔记 列表
  • python怎么获取列表中字典值
    要获取列表中字典的值,可以使用以下方法: 通过索引获取字典: my_list = [{'name': 'Alice', 'age...
    99+
    2023-10-27
    python
  • python列表怎么添加字典元素
    要向Python列表中添加字典元素,可以使用列表的append()方法。例如: my_list = [] my_dict = {&...
    99+
    2024-04-02
  • 列表,元祖,字典小记
    一、列表功能及方法 1,建立列表,列表的元素可以包含任何数数据类型,可以是数字,字符串,列表,元组,字典,集合和布尔值 li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex...
    99+
    2023-01-30
    元祖 小记 字典
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作