编写一个使用binKey对字符串进行乱序处理的函数

2024-10-03 21:28:59 发布

您现在位置:Python中文网/ 问答频道 /正文

这是问题和def功能设置:

shuffleString(myString, binKey) - return myShufString.

编写一个函数,使用binKey对字符串myString进行洗牌。有个主意。我们形成一个新的空字符串myShufString,然后根据{}是0还是1,从{}的开头或结尾连接字符来构建它,从i=0开始,根据需要循环使用{}。您的函数的格式应该是shuffleString(myString, binKey),并且应该返回myShufString。在

提示:您可能需要形成一个来自myString的字符列表,并在一个for循环中使用列表方法pop,长度为myString。这样您就不必跟踪来自myString结尾的字符已经被使用并添加到myShufString。您将在步骤5中调用此函数来洗牌在步骤1中创建的字母表。在

这里有一个例子。假设myString = 'abcdefgh'和{}。在

然后myShufString = 'hagfbedc'

原因:

我们构建myShufString,如下所示。在

0)形成myString中的字符列表,并将其称为myList,因此:

myList = ['a','b','c','d','e','f','g','h'].

1)以空字符串开头:myShufString = ''

2)由于binKey[0] = '1',从myList的末尾弹出'h',并连接到myShufString。在

3)从binKey[1] = '0'开始,从myList开始弹出“a”,并连接到myShufString。在

4)由于binKey[2] = '1',从myList的末尾弹出'g',并连接到myShufString。在

5)现在我们已经到了binKey的结尾,所以我们循环回到开始。在

6)由于binKey[0] = '1',从myList的末尾弹出“f”,并连接到myShufString。在

7)从binKey[1] = '0'开始,从myList开始弹出“b”,并连接到myShufString。在

到目前为止我得到了:

^{pr2}$

我应该用elif代替elif,还是这样可以吗? 而且不确定pop和binKey命令是如何工作的。。。不知道怎么做剩下的。。。在

编辑: 我收到以下错误消息:

回溯(最近一次呼叫):

文件“”,第1行,输入

decryptCS8Cipher("That Sam-I-Am. That Sam-I-Am.  I do not like that Sam-I-Am.","decaf")

文件“C:\Users\Elizabeth\Dropbox\CMPSC 8\lab05\lab05_函数.py“,第54行,英寸

解密CS8密码

shufAlph = shuffleString(alphabet, binKey)

文件“C:\Users\Elizabeth\Dropbox\CMPSC 8\lab05\lab05_函数.py第18行,在shufflesting中

if binKey[i] == '0':

名称错误:未定义全局名称“i”

我不知道怎么处理字符串和I变量! 请帮忙!谢谢您!在


Tags: 文件函数字符串列表sam结尾am字符
1条回答
网友
1楼 · 发布于 2024-10-03 21:28:59

因为这是一个家庭作业问题,所以有几个提示:

您的变量istring有一些问题。它们代表着什么,从何而来。在

至于elseelif想想binKey[i]可以采用什么值,以及if语句对每个值的结果是什么。在

相关问题 更多 >