python 基础 列表生成式


data = {'a':'abc';'b':'bac','c':'cba'}

[v for k,v in data]
结果 ['abc','bca','cba']

格式

[x for x in  内容]

[x for x in 内容 if 条件]

  1. 要把生成的元素x放到前面,执行的时候,先执行后面的for循环
  2. 后面跟上for循环,可以有多个for循环,也可以在for循环后面再加个if条件
  3. for循环后面可以是任何方式的迭代器(元祖,列表,生成器..),只要可迭代对象的元素中至少有一个值。

例子

  单循环列表生成式

  [x for x in 'abcd']

  ['a','b','c','d']

  

  list = [10,11,12,13]

  [x for x in list if x >10]   输出 11,12,13

  

  fields = ['username','name']

  sql = "select %s from user" % ','.join(fields)   输出select username,name from user

       把字符串拼接为列表

  ip = '192.168.1.11'

  res = ip.split(".")   结果 res ['192','168','1','11']

  把列表拼接为字符串

  "."join(res)   结果'192.168.1.11'

  

原文地址:https://www.cnblogs.com/guxiaobei/p/7745415.html