下面的问题是家庭作业(我会先列出问题,然后再列出我的编码)。。。期待您的来信。
问题:设计一个有两个并行数组的程序:一个名为people的字符串数组,用你的7个朋友的名字初始化;另一个名为由你的朋友的电话号码初始化的字符串数组。程序应允许用户输入人名(或人名的一部分)。然后它应该在人物数组中搜索那个人。如果该人被找到,它应该从电话号码数组中获取该人的电话号码并将其显示出来。如果该人没有在人员数组中找到,程序应该显示一条消息表明这一点。
代码:
Def main:
#declare variables
Size=7
People=[any 7 common names]
Phonenumbers= [7 phone numbers]
Searchvalue = 0
index = 0
Found = false
Inputpeople = 0
Found =false
#get name from user
InputpeopleInputpeople = raw_input("Enter name you are looking for:"
While found ==false and index >= size-1
If (people[index])== phonenumbers[index]:
Found == true
Else:
Index = index +1
If found ==1:
Print"the phone number is ",phonenumbers
Else:
Print"there is no listing for this number"
主()
你可以做一些事情。最简单的是.index方法。取你从输入和名称数组中得到的字符串,然后做这样的事情:
ind = people.index(inputtedName)
但是,您也可以继续使用您正在制作的算法。由于这是一项家庭作业,我推荐这样做。你的循环很好。你需要搜索所有的名字。但是,您正在将索引index
处的姓名与索引index
处的电话号码进行比较。这没有道理,因为电话号码和名字不应该相同。相反,将名称与输入的名称进行比较。如果它们匹配,那么您所在的索引就是用户想要的索引。
然后你需要在该索引处显示电话号码,而不是像现在这样显示所有的电话号码。
最后,记住正确大写。布尔值在python中是大写的,大多数函数等都不是。
如果你需要的话,我可以提供更多的细节,但希望这已经足够了。