使用python的基本列表操作

使用python的基本列表操作,python,list,function,Python,List,Function,这三个功能是我学习指南的一部分,非常感谢您的帮助。 在每种情况下,函数都会返回一个值(因此请使用return语句):它不会打印该值(没有打印语句)或修改(更改)其任何参数的值 1) repl函数有三个参数: ◦老是任何价值; ◦任何价值都是新的; ◦xs是一个列表 Example: >>> repl('zebra', 'donkey', ['mule', 'horse', 'zebra', 'sheep', 'zebra']) ['mule', 'horse', 'don

这三个功能是我学习指南的一部分,非常感谢您的帮助。 在每种情况下,函数都会返回一个值(因此请使用return语句):它不会打印该值(没有打印语句)或修改(更改)其任何参数的值

1) repl函数有三个参数: ◦老是任何价值; ◦任何价值都是新的; ◦xs是一个列表

 Example:
 >>> repl('zebra', 'donkey', ['mule', 'horse', 'zebra', 'sheep', 'zebra'])
 ['mule', 'horse', 'donkey', 'sheep', 'donkey']
它返回一个新列表,该列表通过将xs中出现的所有旧列表替换为新列表而形成

它不能改变列表xs;i、 例如,从函数返回后,为xs提供的实际参数必须是之前的参数

 >>> friends = ['jules', 'james', 'janet', 'jerry']
 >>> repl('james', 'henry', friends)
 ['jules', 'henry', 'janet', 'jerry']
 >>> friends
 ['jules', 'james', 'janet', 'jerry']
2) 搜索函数在列表中查找值。它包含两个参数: ◦y是正在搜索的值。 ◦xs是正在搜索的列表

如果y在xs中第一次出现,则返回其索引;−1否则

 Examples:
 >>> words = ['four', 'very', 'black', 'sheep']
 >>> search('four', words)
 0
 >>> search('sheep', words)
 3
 >>> search('horse', words)
 -1
3) doubles函数被赋予一个数字列表,并返回一个包含给定列表中每个数字的doubles的新列表

 Example:
 >>> doubles([1, 3, 7, 10])
 [2, 6, 14, 20]
不得改变给定列表:

 >>> salaries = [5000, 7500, 15000]
 >>> doubles(salaries)
 [10000, 15000, 30000]
 >>> salaries
 [5000, 7500, 15000]
这是在不使用任何列表方法(append除外)的情况下完成的。(特别是,您不能将索引或计数用于搜索功能。)

尽管可以使用list len函数和list操作+、*、索引、切片和==来比较列表或元素。您需要使用其中一些,但不是全部

如我在介绍中所述,非常感谢您的帮助

到目前为止,我所拥有的只是

 def repl (find, replacement, s):
     newString = ''
     for c in s:
         if c != find:
             newString = newString + c
         else:
             newString = newString + replacement
     return newString

 def search(y, xs):
      n = len(xs)
      for i in range(n):
          if xs[i] == y:
              return i
      return -1
还有

 def search(key,my_list):
   if key in my_list:
     return my_list.index(key)
   else:
     return 

我不确定在else语句之后需要返回什么。

我怀疑这节课是关于列表理解的

def relp(old,new,my_list):
  final = []
  for x in my_list:
    if x is old:
      final.append(new)
    else:
      final.append(x)
  return final


def search(key,my_list):
  if key in my_list:
      return my_list.index(key)
  else:
      return -1

def doubles(my_list):
  return[x*x for x in my_list]
doubles = lambda my_list: [x*2 for x in my_list]
repl = lambda old_t,new_t,my_list: [x if x != old_t else new_t for x in my_list]

print repl("cow","mouse",["cow","rat","monkey","elephant","cow"])
print doubles([1,2,3,4,'d'])

我没有得到示例中所示的正确答案。还有我还没有编译的最后两个问题的代码。我正试图用这个来刷新我的记忆,但在记住正确的解决方案时遇到了一些问题。你能用你在这里添加的细节来编辑你的帖子吗?你会有更好的机会找到正确的答案