Python中用字母初始化列表的不同方法
当我们处理基于语音的操作或创建字母分析表时,我们需要一系列有序的字母。我们可以使用Python编程来执行此类操作。Python提供了许多库和方法来创建有序的字母序列。我们可以使用多种集合数据类型(如列表、元组、字典等)来包含这些字母序列。
在本文中,我们将执行类似的操作来打印一个按正确顺序初始化的字母列表。生成的列表将包含所有26个英语字母。在我们深入讨论之前,让我们快速了解一下本文的概述。
什么是字母列表?
有序字母列表是26个英语字母按正确顺序排列的序列。例如:
['A', 'B', 'C', 'D', 'E'....... 'Z']
理解ASCII码
当我们初始化字母时,我们需要一个可以指导程序员的方案。ASCII表是一种用于电信字符编码的方案。每个字符都是一个7位代码,表示字母数字数据。此方案的最新版本于1986年发布。总共有256个字符存在于此方案中。这包括大小写英语字母以及10个数字和33个特殊字符。
ASCII表结构
整个ASCII表分为多个类别。总共有256个ASCII字符,但只表示128个字符。其中,95个字符被认为是可打印的。
在可打印字符列表中,26个是小写字母,范围从97到123。26个大写字母的范围从65到91。我们的目标是从这95个可打印字符中提取信息,特别是字母字符。
使用ord()和chr()方法
ord()方法 - 此方法用于返回ASCII表中字符的Unicode值。每个字符都带有一个Unicode,这个Unicode是一个整数值。条件是只能传递长度为1的字符串,即一次只能评估单个字符。我们将使用ord()函数来设置范围或获取特定字符的Unicode值。
chr()方法 - 此函数从Unicode值返回字符串或字符。它接收Unicode值作为参数。我们将使用此函数在通过ord()函数传递范围后检索字符。
示例
以下是将字母初始化到列表中的示例:
这里:
我们创建了一个空列表。
我们在“char1”变量中初始化起始字符点。此变量帮助我们生成ASCII表的参考。
我们创建了一个for循环,并遍历该表以获取所有26个字母。
我们使用“chr()”获取Unicode变量的字符。
我们使用“ord()”获取Unicode字符。
在每次循环后,我们递增“char1”的值。
最后,我们打印完全初始化的列表。
lis1 = [] print("Contents of the list before initialisation:", str(lis1)) char1 = "A" for characters in range(0, 26): lis1.append(char1) char1 = chr(ord(char1) + 1) print("Contents of the list after initialisation:", str(lis1))
输出
Contents of the list before initialisation: [] Contents of the list after initialisation: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
我们也可以通过将char1值初始化为“a”来打印小写字母。
使用列表推导式
使用列表推导式,我们可以以优雅的方式传递代码。整个循环机制可以写在一行代码中。让我们看看它的实现:
示例
lis1 = [] print("the list before initialisation:", str(lis1)) lis1 = [chr(characters) for characters in range (ord("A"), ord("Z")+1)] print("the list after initialisation:", str(lis1))
输出
the list before initialisation: [] the list after initialisation: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
使用映射
在此方法中,我们映射整个字符表,然后打印它。让我们看看它的实现。
这里:
我们创建了一个空列表。
我们映射了列表元素,并使用ASCII字符值来设置范围。由于我们正在打印大写值,因此我们创建了65-91的范围。
示例
lis1 = [] print("The list before initialisation:", str(lis1)) lis1 = list(map(chr, range(65, 91))) print("The list after initialisation:", str(lis1))
输出
The list before initialisation: [] The list after initialisation: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
结论
在本文中,我们讨论了将整个英语字母初始化到列表中的不同方法。我们了解了ASCII码的概念及其意义。