Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将列表中的一个数字更改为另一个数字_Python - Fatal编程技术网

Python 如何将列表中的一个数字更改为另一个数字

Python 如何将列表中的一个数字更改为另一个数字,python,Python,如何在不知道号码所在位置的情况下更改列表中的号码?例如,如果我有: number=[11,2,3,4,5,6,7,8,9,10,10,10] 假设我想将数字11更改为1,但我不知道11位于位置0 我不想做这样的事情 if 11 in numbers: number[11] = 1 因为这会把数字10变成1。 因此,无论11在列表中的哪个位置,它都将替换为1 上面的代码基本上是检查列表中是否有11,如果有,它将替换为1。遍历列表的索引: numbers = [x if x is not

如何在不知道号码所在位置的情况下更改列表中的号码?例如,如果我有:

number=[11,2,3,4,5,6,7,8,9,10,10,10]

假设我想将数字11更改为1,但我不知道11位于位置0

我不想做这样的事情

if 11 in numbers:
    number[11] = 1
因为这会把数字10变成1。 因此,无论11在列表中的哪个位置,它都将替换为1


上面的代码基本上是检查列表中是否有11,如果有,它将替换为1。

遍历列表的索引:

numbers = [x if x is not 11 else 1 for x in numbers]
numbers = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]
for i in range(len(numbers)):
    if numbers[i] == 11:
        numbers[i] = 1

print(numbers)
#[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]

使用
索引
方法列出
对象

numbers[numbers.index(11)] = 1
如果
11
不在
numbers
中,它将失败。
它将只替换第一个出现的元素。

number[11]
是列表中的第12个(由于基于0的索引)元素,而不是碰巧具有值
11
的元素(如果有)。是的,我知道这一点。我试图找出如何将值11更改为1。不管它处于什么位置。那么你是在问“我如何在列表中找到一个值的索引?”如果是,你是否尝试过任何研究来解决这个问题?最初,我没有想到要找到该值的索引。我确实做过研究,但我用了错误的问题来寻找。虽然我很感激有人给了我想要的答案。这是一个全新的列表。OP似乎要求更改首字母list@OneCricketeer,但这个新的列表将取代以前的列表,有什么问题吗?像家庭作业一样?:)@OneCricketeer@Olvin根据空间要求,分配不必要的空间memory@OneCricketeer,为了不分配额外的内存,您可以使用
numbers[:]=(如果x不是11,则x为1,否则x为1)
@OlvinRoght是的,您可以用一千种不同的方法来分配。有一千种方法可以做到这一点,但似乎是最快的解决方案,具有