【问题标题】:How to replace all elements in a list by a single variable如何用单个变量替换列表中的所有元素
【发布时间】:2021-04-03 22:16:12
【问题描述】:
nums = [1,2,3,4,5,6]
replace = 1

for x in nums:
    x = replace
    print(x)

如何将所有nums 替换为1

nums = [1,1,1,1,1,1]

【问题讨论】:

    标签: python list replace


    【解决方案1】:

    如果数字(在本例中为1)已知,只需像这样重新分配它:

    replace = 1
    nums = [replace]*len(nums)
    

    如果数字太多,这比其他答案中建议的迭代要快得多。

    >>> start=time.time(); a = [1 for _ in range(1000000)]; print(time.time() - start)
    0.039171695709228516
    >>> start=time.time(); a = [1] * 1000000; print(time.time() - start)
    0.0036449432373046875
    

    【讨论】:

    【解决方案2】:

    x=replace 替换的是迭代器,而不是列表中的值,所以尝试使用list理解:

    nums = [replace for x in nums]
    print(nums)
    

    输出:

    [1, 1, 1, 1, 1, 1]  
    

    【讨论】:

      【解决方案3】:

      除了nums=[1,1,1,1,1,1]之外还有几种方式:

      nums = [1,2,3,4,5,6]
      replace = 1
      
      for index,_ in enumerate(nums):
          nums[index] = replace
      

      【讨论】:

        【解决方案4】:

        试试这个:

        nums = [1,2,3,4,5,6]
        replace=1
        nums=[replace]*len(nums)
        

        【讨论】:

          【解决方案5】:

          如果要使用循环,可以执行以下操作:

          nums=[1,2,3,4,5,6]
          
          replace=1
          
          for i in range(len(nums)):
              nums[i]=replace
          
          >>> print(nums)
          
          [1, 1, 1, 1, 1, 1]
          

          【讨论】:

            【解决方案6】:

            如果您还有其他问题,请告诉我。

            第一个 Mtd:-

            nums = [1,2,3,4,5,6]
            replace = 1
            nums = list(map(lambda x : replace,nums))
            

            第二个 Mtd:-

            nums = [1,2,3,4,5,6]
            replace = 1
            nums = [replace for i in range(len(nums))] 
            print(nums)
            

            【讨论】:

            • 第二种方法是非常不可取的。
            • 谢谢,我换了第二个mtd。
            猜你喜欢
            • 2021-01-13
            • 1970-01-01
            • 2021-08-26
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-08-16
            相关资源
            最近更新 更多