Python3.3-列表
所以我试图创建一个前10个州的州缩写列表。很简单(不要称之为列表状态1)。然后,我想使用切片创建第二个列表,其中仅输出中间的4个状态…仍然足够(我们将此列表称为states2)。好吧,所以我搞砸的部分是我在这里。。我想使用一个函数(让我们把它命名为list_func),states2是唯一的参数。在这个参数中,我想删除列表中的第二个状态,插入TX作为索引2,要求用户提供一个随机的新状态并将其附加到列表中,然后反转列表。这是我到目前为止想到的。。我想我大部分都是正确的,但我不确定是否需要微调Python3.3-列表,python,Python,所以我试图创建一个前10个州的州缩写列表。很简单(不要称之为列表状态1)。然后,我想使用切片创建第二个列表,其中仅输出中间的4个状态…仍然足够(我们将此列表称为states2)。好吧,所以我搞砸的部分是我在这里。。我想使用一个函数(让我们把它命名为list_func),states2是唯一的参数。在这个参数中,我想删除列表中的第二个状态,插入TX作为索引2,要求用户提供一个随机的新状态并将其附加到列表中,然后反转列表。这是我到目前为止想到的。。我想我大部分都是正确的,但我不确定是否需要微调 de
def main():
states1 = ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL']
print(states1)
states2 = states1[3:7]
print(states2)
for list_func in states2:
states2.remove('CA')
states2.insert(1,'TX')
user_st = input('Enter a new state: ')
states2.append(user_st)
states2.reverse()
print(states2)
main()
应该打印
states2
而不是您的迭代器,list\u func
。。。我看不出有任何必要为循环状态2
def main():
states1 = ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL']
print(states1)
states2 = states1[3:7]
print(states2)
states2.remove('CA')
states2.insert(1,'TX')
user_st = input('Enter a new state: ')
states2.append(user_st)
states2.reverse()
print(states2)
考虑使用pop
方法,而不是remove
,方法如下:
states2.pop(states2.index('CA'))
对于你的家庭作业:
states1 = ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL']
print(states1)
states2 = states1[3:7]
print(states2)
# call your function:
list_func(states2)
print(states2)
def list_func(lst):
lst.pop(lst.index('CA')
lst.insert(1,'TX')
user_st = input('Enter a new state: ')
lst.append(user_st)
lst.reverse
考虑到问题的局限性,类似这样的方法是可行的:
def main():
states1 = ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL']
print(states1)
states2 = states1[3:7]
print(states2)
list_func(states2)
def list_func(states):
states.remove('CA')
states.insert(1,'TX')
user_st = input('Enter a new state: ')
states.append(user_st)
states.reverse()
print(states)
main()
list_func现在是一个函数,唯一的输入是states2 list。当调用该函数时,它将执行您列出的操作。没有使用pop(),正如您提到的,您还没有介绍过它因此,
list\u func
在我们提到没有人调用它之前,它似乎还不是一个函数。应该打印states2
而不是您的迭代器,list\u func
。。。我不认为对于< <代码> >循环>代码> Stists2,你应该考虑一个更好的标题,具体的问题。谢谢。起初我尝试过这个方法,但出于某种原因,它看起来并不正确,因为我的指令中说“执行一个名为list_func的函数,其中states2是它唯一的参数”。这让人高兴,有时你只需要另一双眼睛来观察这个问题。在任何情况下,您可能需要考虑<代码> POP<代码>,而不是<代码>删除< /代码>。所以我被告知…但是我们还没有谈到书中的那一部分,哈哈。我仍然不确定当它说:“执行一个名为list_func的函数,states2作为它的唯一参数”时的指令是什么意思。请参阅修订版,其中包括一个函数list_func
,它将list作为它的唯一参数。哦,我明白了。。。因此,我们需要在main中调用list_func使其工作。但我也需要定义它,使它工作。。。令人惊叹的!!泰!!