Python 如何编写一个函数平方\奇数\项?
编写一个函数Python 如何编写一个函数平方\奇数\项?,python,python-3.x,Python,Python 3.x,编写一个函数square\u odd\u terms,该函数接受一个元组作为参数,并返回一个元组,元组中的奇数项为平方。甚至条款也将保持不变 例如,平方奇数项((1,2,3,4,5))返回(1,2,9,4,25)和平方奇数项((2,4,6,8,10))返回(2,4,6,8,10) 答覆格式: def square_odd_terms(tpl): # Fill in your code here 如何回答这个问题?如何修改上述代码以满足问题要求?正确答案是什么?在这里张贴家庭作业问题,嗯 以
square\u odd\u terms
,该函数接受一个元组作为参数,并返回一个元组,元组中的奇数项为平方。甚至条款也将保持不变
例如,平方奇数项((1,2,3,4,5))
返回(1,2,9,4,25)
和平方奇数项((2,4,6,8,10))
返回(2,4,6,8,10)
答覆格式:
def square_odd_terms(tpl):
# Fill in your code here
如何回答这个问题?如何修改上述代码以满足问题要求?正确答案是什么?在这里张贴家庭作业问题,嗯 以下是解决此问题的一种方法:
- 创建结果元组(空)
- 使用循环遍历输入元组中的每个项
- 检查tupleValue[i]是奇数还是偶数
- 如果是偶数,只需将其添加到结果元组
- 如果为奇数,则计算平方并添加到结果元组
- 返回结果元组
快乐编码 您可以使用列表理解:
[ x**2 if x%2==1 else x for x in tpl ]
但是,这将创建一个列表,而不是元组。要创建元组,可以转换结果:
tuple([ x**2 if x%2==1 else x for x in tpl ])
或者首先简单地使用生成器表达式:
tuple( x**2 if x%2==1 else x for x in tpl )
tuple( x**2 if x%2==1 else x for x in tpl )