雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

使用 Python 从字典键中删除空格

2024-08-12 42

Python是广泛用于数据分析,Web开发,AI的平台,并在自动化的帮助下执行许多不同类型的任务。对我们来说,了解 python 的不同功能很重要。在本文中,我们将了解字典功能以及如何使用 python 删除键之间的空格。此功能主要用于根据需要存储和检索数据,但有时字典的键值之间可能存在空格。当用户希望访问数据时,甚至在要编辑数据的情况下,这会导致错误。

删除空间的不同方法

为了确保没有遇到此类问题并获得流畅的用户体验,我们可以删除字典中键之间的空格。因此,在本文中,我们将了解如何使用python从字典键中删除空格的不同方法?

建立新词典

删除空格的最简单方法之一是简单地创建一个全新的字典。相同的步骤是只需从现有字典中选择每个值对,然后使用相同的值创建一个新字典,只需删除它们之间的空格即可。让我们举一个例子来更好地理解它:-

def remove_spaces(dictionary):     modified_dictionary = {}     for key, value in dictionary.items():         new_key = key.replace(" ", "")  #removing space between keys         modified_dictionary[new_key] = value     return modified_dictionary

在上面的代码中

字典的输入被赋予一个名为remove_spaces的函数

所有新值都存在于modified_dictionary

要使用键之间有空格的旧值,我们可以使用 items()

要从修改后的库中删除所有空格,请使用 replace()。

要检查键之间的空格是否被删除,我们可以使用以下字典:-

test_dictionary = {"full name": "Aayush Yadav", "age": 12}  #This data is used just for example

然后我们将分别使用 remove_spaces 和 test_dictionary 作为函数和参数

def remove_spaces(dictionary):     modified_dictionary = {}     for key, value in dictionary.items():         new_key = key.replace(" ", "")  #removing space between keys         modified_dictionary[new_key] = value     return modified_dictionary test_dictionary = {"full name": "Aayush Yadav", "age": 12}  #This data is used just for example modified_dictionary = remove_spaces(test_dictionary) #After the function and argument has been called print(modified_dictionary)

输出

执行上述所有步骤后的输出将如下所示:

{'fullname': 'Aayush Yadav', 'age': 12}

删除了全名之间的空格,因此我们成功地删除了空格。

编辑现有词典

在这种从键中删除空格的方法下,我们不会像第一种方法那样在删除空格后创建任何新字典,而是从现有字典中删除键之间的空格。我们将通过以下示例以更好的方式理解它:

def remove_spaces(dictionary):     keys_to_remove = []     for key in dictionary.keys():         if " " in key:             new_key = key.replace(" ", "") #removing space between keys             dictionary[new_key] = dictionary.pop(key)     return dictionary

上面的代码可以用来删除键之间的所有空格,我们可以通过以下字典为例来检查它们:-

our_dictionary = {"full name": "Aayush Singh" , "Father name": "Yadav"}

现在我们将使用 our_dictionary 作为参数,remove_spaces 作为进行更改的函数。

def remove_spaces(dictionary):     keys_to_remove = []     for key in dictionary.keys():         if " " in key:            new_key = key.replace(" ", "") #removing space between keys            dictionary[new_key] = dictionary.pop(key)     return dictionary our_dictionary = {"full name": "Aayush Singh" , "Father name": "Yadav"} remove_spaces(our_dictionary) print(our_dictionary)

输出

调用参数并运行函数后的输出为:

{'fullname': 'Aayush Singh', 'fathername': 'Yadav'}

已成功删除全名和父亲姓名之间的空格。

使用字典理解

此方法与上述其他两种方法不同。在这种方法中,我们从字典理解创建一个新字典。键的值保持不变,但所做的唯一更改是在将数据从字典理解传输到新字典时,rxemove中键之间的空格。我们可以使用以下代码以更好的方式理解它:

def no_spaces (dictionary): #From dictionary Comprehension     return {key.replace(" ", ""): value for key, value in dictionary.items()}

要删除键值之间的空格,我们可以使用 replace() 函数,我们可以通过以下字典进行检查:

my_dictionary = {"full name": "Aayush Singh", "father name": "Yadav"}

然后,我们将运行my_dictionary作为参数,no_spaces作为函数运行。

def no_spaces (dictionary): #From dictionary Comprehension     return {key.replace(" ", ""): value for key, value in dictionary.items()} my_dictionary = {"full name": "Aayush Singh", "father name": "Yadav"} modified_dictionary = no_spaces (my_dictionary) print(modified_dictionary)

输出

在这种情况下,输出将如下所示:

{'fullname': 'Aayush Singh', 'fathername': 'Yadav'}

全名和父亲姓名之间的空格被删除,因此我们成功地删除了空格。

使用递归函数

这种类型的方法最适合当一个字典存在于另一个字典(嵌套字典)中的情况。在这种情况下,我们可以使用递归函数来删除键之间的空格。我们将通过以下示例以更好的方式理解它:

def remove_spaces (dictionary):      new_dictionary = {}     for key, value in dictionary.items(): #For normal dictionary         if isinstance(value, dict):  #for nested dictionary              value = remove_spaces (value)         new_key = key.replace(" ", "") #removing space between keys         new_dictionary[new_key] = value     return new_dictionary

我们将使用以下示例来测试代码:

test_dictionary = {"full name": "Aayush Singh", "father name": "Yadav", "details": {"age": 12, "blood group": "O-"}}

现在我们将调用参数test_dictionary并remove_spaces运行函数:

def remove_spaces (dictionary):      new_dictionary = {}     for key, value in dictionary.items(): #For normal dictionary         if isinstance(value, dict):  #for nested dictionary              value = remove_spaces (value)         new_key = key.replace(" ", "") #removing space between keys         new_dictionary[new_key] = value     return new_dictionary test_dictionary = {"full name": "Aayush Singh", "father name": "Yadav", "details": {"age": 12, "blood group": "O-"}} modified_dictionary = remove_spaces (test_dictionary) print(modified_dictionary)

输出

上面示例的输出将是:

{'fullname': 'Aayush Singh', 'fathername': 'Yadav', 'details': {'age': 12, 'bloodgroup': 'O-'}}

全名和父亲姓名之间的空格被删除,因此我们成功地使用递归函数删除了空格。

结论

Python有许多不同的使用目的,因此有可能有人想使用python删除字典键之间的空格。因此,本文介绍了可用于删除键之间空格的不同方法。本文包括为删除键之间的间距而要执行的所有编码,以及使方法更易于理解的示例

若要防止在运行代码时出现任何错误,请确保更改不会复制到代码的其他部分中。

更新于:3个月前
赞一波!1

文章评论

评论问答