python - 将函数的输出保存到列表中的 Python 函数
问题描述
该程序应该给用户输入,以便程序接受该输入并作为输出释放加密文本,同时在用户输入“保存”时将加密文本保存在列表中。 这里的问题是,当用户输入保存时,它只会将“保存”的加密词附加到列表中。
alph = ['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']
def encrypt(text):
global semi_crypt
semi_crypt = ""
for char in text:
if char not in alph:
semi_crypt = semi_crypt + char
try:
if char in alph:
x = alph.index(char)
semi_crypt = semi_crypt + alph[x + 3]
except IndexError:
if char == "x":
semi_crypt = semi_crypt + 'a'
elif char == "y":
semi_crypt = semi_crypt + 'b'
elif char == 'z':
semi_crypt = semi_crypt + "c"
return semi_crypt
print('''
This is Encrypto
''')
print('Type end to save when you are done')
while True:
crypted_l = []
message = input('Encrypt something: ')
print(encrypt(message))
crypted_l.append(encrypt(message))
if message == 'save':
print(f"{'Saved:'}{crypted_l}")
break
解决方案
跳出crypted_l
循环,如下:
crypted_l = []
while True:
message = input('Encrypt something: ')
print(encrypt(message))
crypted_l.append(encrypt(message))
if message == 'save':
print(f"{'Saved:'}{crypted_l}")
break
推荐阅读
- flutter - 添加提供程序后,Flutter 提供程序未加载登录 UI
- javascript - 为什么我的 innerHTML 更改颜色不适用于 javascript keydown?
- python - 使用布尔值查找两个列表之间的项目匹配并创建字典
- c++ - 具有仅显示偶数的显示功能的循环队列
- selenium - Selenium(Java)没有识别只有div元素的表中的某些元素
- c# - 使用 C# Nunit 捕获异常并声明它
- java - 错误:无法找到或加载主类 C:.Program 原因:java.lang.ClassNotFoundException:C:.Program java11、intellij IDEA 和 javafx 11
- amazon-web-services - 对filebeat AWS支持感到困惑
- javascript - 在javascript中按数字选择每个ID
- vue.js - vue.js vue-gl 在组件中缺少道具相机