Python的list真hi。。。

來源:互聯網
上載者:User

list實現一個棧:

在資料結構中提到,c可以使用雙隊列mock,

在Java中使用單個List+API完全可以做到,

用Python。。則完全不用做事了:list居然實現了一個典型棧才有的方法pop()...真是動態到了極致。

  1. stack = []
  2. print(type(stack))
  3. def push():
  4.     stack.append(raw_input('Enter New String Node').srip())
  5. def pop():
  6.     if len(stack)==0:
  7.         print 'Empty stack Error'
  8.     else:
  9.         print 'remove ',`stack.pop()`

列表的解析也是極大減少了指頭的機械性損傷:

  1. #列表解析
  2. squared = [x ** 2 for x in range(4)] 
  3. sqdEvens = [x ** 2 for x in range(8) if not x % 2] 

下面是一些切片操作:切片在string,list,tuple中都是可以使用的

  1. ##列表切片操作
  2. test=['never', 1, 2, 'yes', 1, 'no', 'maybe']
  3. test[0:3] #包括test[0],不包括test[3]
  4. ['never', 1, 2]
  5. test[0:6:2] #包括test[0],不包括test[6],而且步長為2
  6. ['never', 2, 1]
  7. test[:-1] #包括開始,不包括最後一個
  8. ['never', 1, 2, 'yes', 1, 'no']
  9. test[-3:] #抽取最後3個
  10. [1, 'no', 'maybe']
  11. test[::-1] #倒序排列
  12. ['maybe', 'no', 1, 'yes', 2, 1, 'never']

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.