首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【Python系列】字典灵活的数据存储与操作

【Python系列】字典灵活的数据存储与操作

原创
作者头像
kwan的解忧杂货铺
发布2024-11-26 00:40:14
发布2024-11-26 00:40:14
3790
举报

在开始今天的分享之前,我想先推荐一篇非常精彩的文章。

文章就是《渗透测试文件包含漏洞原理与验证(1)——文件包含概述》🚀🌟🚀🌟🚀🌟

链接是:点击这里

这篇文章详细解释了文件包含漏洞的原理,以及如何在实际的 Web 应用程序中发现和验证这类漏洞。它提到,文件包含漏洞通常发生在 PHP 等脚本语言中,当开发者在引入文件时没有对文件名进行充分的校验,就可能导致意外的文件泄露或恶意代码注入。

文章还介绍了几种 PHP 中的文件包含函数,包括include()include_once()require()require_once(),以及它们在找不到文件时的不同行为。此外,文章还探讨了利用文件包含漏洞的条件,比如函数通过动态变量引入文件,以及用户能够控制这个动态变量。

通过一些实际的示例,文章展示了如何通过修改文件扩展名来绕过某些安全限制,以及如何通过修改 URL 参数来实现文件包含攻击。

这篇文章不仅提供了丰富的技术细节,还强调了合法合规的重要性。它提醒我们,所有的渗透测试活动都应该在获得明确授权的情况下进行,并且要遵守相关法律法规。

如果你对 Web 安全感兴趣,或者想要提高你的 Web 应用程序的安全性,我强烈推荐你阅读这篇文章。它不仅能够提供实用的技术知识,还能帮助你更好地理解安全领域的法律和道德规范。让我们一起在合法合规的前提下,探索和提升 Web 安全吧!


在 Python 编程语言中,字典(dict)是一种非常重要的数据结构,它以其灵活性和高效性而广受欢迎。字典通过键值对(key-value pairs)的形式存储数据,使得数据的检索和更新变得异常方便。

字典的基本概念

字典在 Python 中是一种可变的数据类型,它存储的是键值对。每个键(key)与一个值(value)相关联,键是唯一的,而值可以重复。字典的键通常是不可变类型,如字符串、数字或元组,而值可以是任何数据类型。

字典的创建

创建一个字典非常简单,可以使用花括号{}来定义,也可以使用dict()函数。例如:

代码语言:python
复制
# 使用花括号创建字典
my_dict = {'name': 'Kimi', 'age': 1}

# 使用dict()函数创建字典
another_dict = dict(name='Kimi', age=1)

字典的访问

访问字典中的值通常通过键来实现,使用方括号[]。如果键不存在,将会抛出KeyError

代码语言:python
复制
# 访问字典中的值
print(my_dict['name'])  # 输出: Kimi

如果不确定键是否存在,可以使用get()方法,它允许设置一个默认值,如果键不存在则返回这个默认值。

代码语言:python
复制
# 使用get()方法访问字典中的值
print(my_dict.get('city', 'Unknown'))  # 输出: Unknown

字典的添加和修改

向字典中添加新的键值对或修改现有键的值都非常简单,只需要使用赋值操作即可。如果键不存在,Python 会创建一个新的键值对;如果键已存在,其值将被新的值覆盖。

代码语言:python
复制
# 向字典中添加新的键值对
my_dict['city'] = 'Shanghai'

# 修改现有键的值
my_dict['age'] = 2

字典的删除

字典中的元素可以通过del语句或pop()方法删除。del语句可以直接通过键来删除,而pop()方法除了删除元素外,还会返回被删除元素的值。

代码语言:python
复制
# 使用del语句删除键值对
del my_dict['city']

# 使用pop()方法删除键值对并获取其值
age = my_dict.pop('age')

字典的遍历

字典可以通过多种方式进行遍历,包括遍历键、值或键值对。

代码语言:python
复制
# 遍历字典的键
for key in my_dict:
    print(key)

# 遍历字典的值
for value in my_dict.values():
    print(value)

# 遍历字典的键值对
for key, value in my_dict.items():
    print(key, value)

字典的合并

Python 3.5 及以上版本中,可以使用{**dict1, **dict2}{**dict1, key: value}的方式合并字典。

代码语言:python
复制
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
merged_dict = {**dict1, **dict2}  # 输出: {'a': 1, 'b': 3, 'c': 4}

字典的内置方法

Python 字典提供了许多内置方法,如keys(), values(), items(), update()等,这些方法使得对字典的操作更加灵活和强大。

代码语言:python
复制
# 使用update()方法更新字典
my_dict.update({'city': 'Beijing'})

# 使用keys()获取所有键
keys = my_dict.keys()

# 使用values()获取所有值
values = my_dict.values()

字典的比较

字典之间可以使用比较运算符进行比较,比较的顺序是先比较键,如果键相同则比较值。

代码语言:python
复制
dict1 = {'a': 1, 'b': 2}
dict2 = {'a': 1, 'b': 2}
print(dict1 == dict2)  # 输出: True

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字典的基本概念
  • 字典的创建
  • 字典的访问
  • 字典的添加和修改
  • 字典的删除
  • 字典的遍历
  • 字典的合并
  • 字典的内置方法
  • 字典的比较
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档