【发布时间】:2020-01-03 08:48:21
【问题描述】:
我对 python 很陌生。目前无法联系老师,尝试使用 HackerRank 自学。我意识到这是一个非常简单的问题,但是......
目前正在解决从用户输入或集合输入(即 4 个整数)反转数组的问题。
这是我目前的代码:
elements = [input("Enter an int: ") for i in range(4)]
arr = []
array = arr.append(elements)
print(arr)
我的第一个问题: 我从概念上不明白为什么“print(array)”会导致 None 而不是打印出整个数组序列。我意识到 arr.append 将输入存储在 arr 中,但是为什么它不能识别将整个内容存储在新的变量数组中。
我正在尝试反转数组,以便 [1, 2, 3, 4] 变为 [4, 3, 2, 1] 但是反转函数。,即,
print(reversed(arr))
不起作用。也没有:
a = arr.reverse()
print(a)
这只是输出无,不知道为什么。
此外,单词列表和数组(我认为它更像一个矩阵)似乎被人们互换使用,但我认为它们在概念上完全不同??
【问题讨论】:
-
你可以使用 arr[::-1] 来反转一个数组
-
该打印语句不会输出任何内容,您将附加分配给您从未尝试打印的不同变量,您在此处打印的打印语句将打印出一些内容
-
1.) 并不是所有的函数都会返回一些东西,有些会修改给定的参数。
append()是列表类的成员函数,它修改您调用它的列表实例。 python 中的 All 函数调用返回一些东西 - 如果没有明确返回任何东西,它们会返回None- 因此None的来源:它的返回arr.append(elements)修改 @987654330 @“就地”并且什么都不返回 -->None. -
2.) HackerRank 可用作学习 pyhton 并使其更有趣的附加资源 - 而不是作为唯一资源 - 寻找 python 教程来学习基础知识,特别是如果您是编程新手。从docs.python.org/3/tutorial 开始,然后谷歌更多..
-
3.) 如果您有任何问题,请先访问 duckduck/google/bing (
site:python.org list.append),然后再访问 python 及其模块的 API 文档,您的问题 99.99% 都会得到解答那里:docs.python.org/3/tutorial/datastructures.html - 如果函数 returns 将在那里提到它,否则它不会。
标签: python arrays python-3.x list reverse