zoukankan      html  css  js  c++  java
  • 《Python CookBook2》 第四章 Python技巧

    若列表中某元素存在则返回之


    任务:

       你有一个列表L,还有一个索引号i,若i是有效索引时,返回L[i],若不是,则返回默认值v  

    解决方案:

    1. 列表支持双向索引,所以i可以为负数
      >>> def list_get(L,i,v=None):
          if -len(L)<= i < len(L):
              return L[i]
          else:
              return v
      
          
      >>> list_get([1,2,3,4,5,6],3)
      4
    2. 异常机制
      >>> def list2_get(L,i,v=None):
          try:
              return L[i]
          except IndexError:
              return 'ERror'
      
          
      >>> list2_get([1,2,3,4,5,6],7)
      'ERror'

       

    在无须共享引用的条件下创建列表的列表


    任务:

      创建一个多维度的列表,切同时避免隐式的引用共享。 

    解决方案:

      使用列表推导创建一个5 x 10的全为0的矩阵:

    >>> test_list = [[0 for x in range(5)] for column in range(10)]
    >>> test_list
    [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

     

  • 相关阅读:
    HDU 2955 Robberies
    CodeForces 429B Working out DP
    Lweb and String 超级大水题
    A water problem 大数取余。
    Danganronpa 水题。
    HDU 2018 DP
    Git分支管理
    linux相关操作命令
    项目部署相关命令(pm2)
    ubantu16.04安装sougou输入法
  • 原文地址:https://www.cnblogs.com/wuzhiming/p/3967932.html
Copyright © 2011-2022 走看看