gpt4 book ai didi

python - 字符串加密算法

转载 作者:行者123 更新时间:2023-11-28 22:12:34 25 4
gpt4 key购买 nike

我有一个字符串加密算法,可以将输入的字符串转换为字符串列表。输出应该是每个列表元素的第一个字母(这里是字符串)。下面列表 1 中的示例

输出应该是'tir hsy ia st'和list2 输出应该是 'tir hsy iat sto'

但是只有当每个列表元素(此处为字符串)包含相同数量的字母时,我的代码才能打印输出,否则(在列表 1 的情况下)它会引发“字符串索引超出范围”。

这里的ceil表示每个列表元素的字母个数(本例中为4个)

如何按照所示方式打印 list1 的输出?p.s-我是 python 初学者

list1=['this','isat','ry']

list2=['this','isat','ryto']

打印输出的代码

for elem in range(ceil):
for i in range(len(list1)):
if list1[elem][i]:
print(list1[i][elem],end='')
print(end=' ')

最佳答案

如果 i 不是 list[elem] 的成员,我猜你希望 if list[elem][i] 为 false但这不是它的作用。相反,Python 会尝试检查该值是否为真,当那里根本没有值时,您将进入 IndexError

无论如何,与其三思而后行,不如请求原谅而不是许可:

list1=['this','isat','ry']

for elem in range(len(list1[0])):
for i in range(len(list1)):
try:
print(list1[i][elem],end='')
except IndexError:
continue
print(end=' ')

如果您更喜欢“三思而后行”变体,检查索引是否存在的正确方法是

            if i in list1[elem]:

我假设列表的第一个元素总是具有最大长度,所以我们只是在外循环中循环它。

关于python - 字符串加密算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54696376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com