CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思路和实现代码,同时也学习学习其他大神写的代码。
CheckiO 官网:https://checkio.org/
我的 CheckiO 主页:https://py.checkio.org/user/TRHX/
CheckiO 题解系列专栏:https://itrhx.blog.csdn.net/category_9536424.html
CheckiO 所有题解源代码:https://github.com/TRHX/Python-CheckiO-Exercise
题目描述
【Easy Unpack】:在这里你的任务是创建得到一个元组,并返回一个包含三个元素(第一,第三和倒数第二的给定元组)的元组与的功能。
【链接】:https://py.checkio.org/mission/easy-unpack/
【输入】:一个不少于三个元素的元组
【输出】:一个元组
【范例】:
easy_unpack((1, 2, 3, 4, 5, 6, 7, 9)) == (1, 3, 7)
easy_unpack((1, 1, 1, 1)) == (1, 1, 1)
easy_unpack((6, 3, 7)) == (6, 7, 3)
解题思路
Python 中的元组和列表类似,但是元组的元素不能修改,而列表的元素是可以修改的,元组使用小括号,列表使用方括号。
代码实现
def easy_unpack(elements: tuple) -> tuple:"""returns a tuple with 3 elements - first, third and second to the last"""return elements[0], elements[2], elements[-2]if __name__ == '__main__':print('Examples:')print(easy_unpack((1, 2, 3, 4, 5, 6, 7, 9)))#These "asserts" using only for self-checking and not necessary for auto-testingassert easy_unpack((1, 2, 3, 4, 5, 6, 7, 9)) == (1, 3, 7)assert easy_unpack((1, 1, 1, 1)) == (1, 1, 1)assert easy_unpack((6, 3, 7)) == (6, 7, 3)print('Done! Go Check!')
大神解答
easy_unpack = lambda t:(t[0],t[2],t[-2])