精华内容
下载资源
问答
  • python创建列表的几种方法

    千次阅读 2019-12-07 10:04:19
    创建python列表 方法一:直接创建列表 a = [1, 2, 3, 4, 5] print(a) /usr/local/bin/python3.8 /Users/sataniya/PycharmProjects/demo/demo.py [1, 2, 3, 4, 5] 方法二:使用list方法 a = list("hello") ...

    创建python列表

    • 方法一:直接创建列表
    a = [1, 2, 3, 4, 5]
    print(a)
    
    /usr/local/bin/python3.8 /Users/sataniya/PycharmProjects/demo/demo.py
    [1, 2, 3, 4, 5]
    
    • 方法二:使用list方法
    a = list("hello")
    print(a)
    
    /usr/local/bin/python3.8 /Users/sataniya/PycharmProjects/demo/demo.py
    ['h', 'e', 'l', 'l', 'o']
    
    • 方法三:使用split方法
    a = "hello world".split(" ")
    print(a)
    
    /usr/local/bin/python3.8 /Users/sataniya/PycharmProjects/demo/demo.py
    ['hello', 'world']
    
    • 方法四:使用列表推导式
    a = [x for x in range(10)]
    print(a)
    
    /usr/local/bin/python3.8 /Users/sataniya/PycharmProjects/demo/demo.py
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    展开全文
  • Python创建列表的4种方式

    万次阅读 多人点赞 2019-08-30 15:28:18
    print(a) #结果,创建空的列表 [] b = [1,2,"abc"] print(b) #结果:[1, 2, 'abc'] print(b[2]) #结果:abc 二、list()创建 c = list() print(c) #结果:创建一个空的列表 c.append(1) print(c) #结果:[1] c ...

    一、基本语法[]创建
    a = []
    print(a)  #结果,创建空的列表 []

    b = [1,2,"abc"]
    print(b)      #结果:[1, 2, 'abc']
    print(b[2])   #结果:abc

    二、list()创建
    c = list()
    print(c)      #结果:创建一个空的列表
    c.append(1)
    print(c)      #结果:[1]

    c = list("abcdefg")
    print(c)      #结果:['a', 'b', 'c', 'd', 'e', 'f', 'g']

    d = list(range(10))
    print(d)      #结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    三、range()创建整数列表
    range()可以帮助我们非常方便的创建整数列表,这在开发中及其有用。语法格式为:
    range([start],end ,[step])
    start 参数:可选,表示起始数字。默认是 0
    end   参数:必选,表示结尾数字。
    step  参数:可选,表示步长,默认为 1

    e = list(range(0,10,2))
    print(e)      #结果:[0, 2, 4, 6, 8]

    f = list(range(10,0,-1))
    print(f)      #结果:[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

    g = list(range(-10,-30,-2))
    print(g)      #结果:[-10, -12, -14, -16, -18, -20, -22, -24, -26, -28]

    四、推导式生成列表(简介一下,重点在 for 循环后讲)
    h = [x*2 for x in range(10)]
    print(h)      #结果:[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

    k = [x*2 for x in range(100) if x%9==0]
    print(k)      #结果:[0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198]

    展开全文
  • 本节我们学习了Flutter中,最常用的视图之一——列表视图的创建及使用方法。 我们可以使用ListView的4种构造方法来创建一个列表视图,并根据自己的需要来进行个性化配置。

    Flutter列表视图ListView的4种创建方式及使用实例


    ListView 是一个线性布局的widgets列表,可以使用水平布局,也可以使用垂直布局(默认)。

    接下来我们来看如何在Flutter中创建和使用ListView。

    创建ListView

    我们可以使用多种方式创建ListView对象。

    1. 直接使用ListView的构造函数

    默认构造函数有一个children参数,它接受一个Widget数组列表(List)。

    这种方式适合只有少量的子组件的情况,因为这种方式需要将所有子widget都提前创建好,而不是等到子widget真正显示的时候再创建,也就是说通过默认构造函数构建的ListView没有应用基于Sliver的懒加载模型。如果列表长度非常长,直接创建大量子widget可能会引起内存问题。

    使用 ListView(children: List) 的优点是简单,直接生成一个 List 的列表,然后赋值给 ListView 的 children 参数即可,例如:

    List<Widget> getListChildren() {
      return [new Text("第一条"), new Text("第二条"), new Text("第三条")];
    }
    
    class _MyHomePageState extends State<MyHomePage> {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text(widget.title),
          ),
          body: new ListView(
            children: getListChildren(),
            shrinkWrap: true,
            padding: const EdgeInsets.all(25.0),
            itemExtent: 50,
          ),
        );
      }
    }
    

    我们来看ListView的构造函数:

      ListView({
        Key key,
        Axis scrollDirection = Axis.vertical,//列表的滚动方向,默认是垂直方向
        bool reverse = false,
        ScrollController controller,//控制器,与列表滚动相关,比如监听列表的滚动事件
        bool primary,
        ScrollPhysics physics,//列表滚动至边缘后继续拖动的物理效果,Android与iOS效果不同。
        bool shrinkWrap = false,//该属性将决定列表的长度是否仅包裹其内容的长度。当ListView嵌在一个无限长的容器组件中时,shrinkWrap必须为true,否则Flutter会给出警告
        EdgeInsetsGeometry padding,//列表内边距
        this.itemExtent,//子元素长度。当列表中的每一项长度是固定的情况下可以指定该值,有助于提高列表的性能
        bool addAutomaticKeepAlives = true,
        bool addRepaintBoundaries = true,
        bool addSemanticIndexes = true,
        double cacheExtent,//预渲染区域长度,ListView会在其可视区域的两边留一个cacheExtent长度的区域作为预渲染区域(对于ListView.build或ListView.separated构造函数创建的列表,不在可视区域和预渲染区域内的子元素不会被创建或会被销毁)
        List<Widget> children = const <Widget>[],//子元素的数组列表
        int semanticChildCount,
        DragStartBehavior dragStartBehavior = DragStartBehavior.start,
        ScrollViewKeyboardDismissBehavior keyboardDismissBehavior = ScrollViewKeyboardDismissBehavior.manual,
      })
    

    可以看到,使用构造函数创建ListView还是非常简单的,但只适用于列表元素较少的情况。

    2. ListView.builder

    ListView.builder利用IndexedWidgetBuilder来按需构造。这种方式适合于具有大量(或无限)子视图的列表视图(因为它只创建当前可见的列表元素)。也就说通过该构造函数创建的ListView是支持基于Sliver的懒加载模型的。

    方法及参数:

      ListView.builder({
        Key key,
        Axis scrollDirection = Axis.vertical,
        bool reverse = false,
        ScrollController controller,
        bool primary,
        ScrollPhysics physics,
        bool shrinkWrap = false,
        EdgeInsetsGeometry padding,
        this.itemExtent,
        @required IndexedWidgetBuilder itemBuilder,
        int itemCount,
        bool addAutomaticKeepAlives = true,
        bool addRepaintBoundaries = true,
        bool addSemanticIndexes = true,
        double cacheExtent,
        int semanticChildCount,
        DragStartBehavior dragStartBehavior = DragStartBehavior.start,
        ScrollViewKeyboardDismissBehavior keyboardDismissBehavior = ScrollViewKeyboardDismissBehavior.manual,
      })
    

    ListView.builder 新增了两个重要参数:

    • itemCount:这个参数声明了list的长度,这个值表明ListView中会存在多少个子项,null则表示无限列表。
    • itemBuilder:它是列表项的构建器,类型为IndexedWidgetBuilder,返回值为一个widget。当列表滚动到具体的index位置时,会调用该构建器构建列表项。(接受 context(构造的上下文) 和 index(当前索引) 两个参数)

    示例,创建一个无限列表:

    class _MyHomePageState extends State<MyHomePage> {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text(widget.title),
          ),
          body: ListView.builder(
            padding: const EdgeInsets.all(25),
            itemExtent: 50,
            itemBuilder: (context, index) {
              return new Text("第$index行");
            },
          ),
        );
      }
    }
    

    3. ListView.separated

    如果列表子项之间需要分割线,此时我们可以用ListView的separated方法来创建列表。

    函数定义:

      ListView.separated({
        Key key,
        Axis scrollDirection = Axis.vertical,
        bool reverse = false,
        ScrollController controller,
        bool primary,
        ScrollPhysics physics,
        bool shrinkWrap = false,
        EdgeInsetsGeometry padding,
        @required IndexedWidgetBuilder itemBuilder,
        @required IndexedWidgetBuilder separatorBuilder,
        @required int itemCount,
        bool addAutomaticKeepAlives = true,
        bool addRepaintBoundaries = true,
        bool addSemanticIndexes = true,
        double cacheExtent,
        DragStartBehavior dragStartBehavior = DragStartBehavior.start,
        ScrollViewKeyboardDismissBehavior keyboardDismissBehavior = ScrollViewKeyboardDismissBehavior.manual,
      }) 
    

    ListView.separated可以在生成的列表项之间添加一个分割组件,它采用两个IndexedWidgetBuilder:itemBuilder根据需要构建子项separatorBuilder类似地构建出现在子项之间的分隔符子项。此构造函数适用于具有固定数量的子控件的列表视图。

    示例:

    class _MyHomePageState extends State<MyHomePage> {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text(widget.title),
          ),
          body: ListView.separated(
            itemCount: 1000,
            itemBuilder: (context, index) {
              return new Center(child: new Text("第$index行"));
            },
            separatorBuilder: (context, index) {
              return Divider(
                height: 1,
                color: Colors.green,
              );
            },
          ),
        );
      }
    }
    

    4. ListView.custom

    使用ListView.custom的SliverChildDelegate构造,它提供了定制子模型的其他方面的能力。 例如,SliverChildDelegate可以控制用于估计实际上不可见的孩子的大小的算法。通常我们使用上面介绍的3种方式就足够了,这里对custom不做过多介绍了。

    小结

    本节我们学习了Flutter中,最常用的视图之一——列表视图的创建及使用方法。

    我们可以使用ListView的4种构造方法来创建一个列表视图,并根据自己的需要来进行个性化配置。

    ps:如果觉得本文对你有所帮助,请在文章下方 “点赞” 、 “收藏” 一下吧~😁

    展开全文
  • 25. Python 创建列表的4种方式

    万次阅读 2020-03-17 23:48:10
    25. Python 创建列表的4种方式

    目录

    1.基本语法 [ ] 创建;

    2.list创建

    3.range()创建整数列表

    4.推导式生成列表


    创建列表的4种方式

    1.基本语法 [ ] 创建;

    >>> a = [1,23,’开心’,’nice’];

    >>> a = []  # 创建一个空的列表对象

    2.list创建

    使用list()可以将任意可迭代的数据转化成列表;

    >>> a = list()  #创建一个空的列表对象

     

    3.range()创建整数列表

    range() 可以帮助我们非常方便的创建整数列表,这在开发中及其有用, 语法格式为:

           range( [start,] end [,step] )

    Start 参数:  可选, 表示起始数字,默认是0;

    End  参数:  必选, 表示结尾数字;

    Step 参数:  可选, 表示步长, 默认为1

    Python3中 range() 返回的是一个range对象, 而不是列表; 我们需要通过 list() 方法将其转换成列表对象;

    注意: 步长为负数, 从右往回数,此时,start应该大于end;

    4.推导式生成列表

    使用列表推导式可以非常方便的创建列表, 在开发中经常使用;在for循环和if语句重点练习;

    eg: 下例为循环创建多个元素和通过if过滤元素,只要复合过滤要求的元素;

     

    展开全文
  • 用list列表以行方式创建DataFrame

    千次阅读 2020-04-18 22:58:56
    用list列表以行方式创建DataFrame DataFrame默认会将一维list作为列处理,需要将一维list转为二维才能实现想要的效果。 a=[1,2,3,4,5] 直接pd.DataFrame(a)得到的是一个1列5行的df,正确方式是: pd.DataFrame([a]) ...
  • 列表创建方法

    千次阅读 2018-03-19 10:39:02
    一、使用 [ ] 创建列表a = [1 ,2 ,3 ,4 ,5]b = ['cat', 'dog', 'chick']二、使用 list() 创建列表empty_list = list()等价于:empty_list = []三、使用列表生成式创建列表[ expression for items in iterable ]...
  • python中创建列表If you want to learn how to create an empty list in Python efficiently, then this article is for you. 如果您想学习如何在Python中高效地创建一个空列表,那么本文适合您。 You will learn...
  • python-使用列表创建字典

    万次阅读 2018-10-22 19:49:02
    本文主要介绍如果将两个列表作为键-值,快速创建字典。   1.使用列表快速生成字典的 #推荐方式: key_list = ['D', 'U', 'B', 'X', 'G', 'M', 'K', 'Y', 'H', 'W'] value_list = [68, 85, 66, 88, 71, 77, 75, ...
  • python如何创建列表

    万次阅读 2020-01-09 07:32:12
    在Python中创建新的空列表的方法有两种,如下: 或 list()比[]慢,因为: 1、有符号查找; 2、有函数调用;...
  • Python列表推导式

    万次阅读 多人点赞 2019-05-18 00:51:24
    列表推导式是Python构建列表(list)的一种快捷方式,可以使用简洁的代码就创建出一个列表. 一、range()函数 python的range()函数可用来创建一个整数列表,一般用在 for 循环中. range()语法:range(start, stop[, ...
  • SQL Server中数据库的两种创建方式

    千次阅读 2019-02-18 09:10:47
    数据库的两种创建方式 1.以界面方式创建数据库 在数据库名称中输入自己自定义的数据库名称 初始大小,自动增长,路径根据自己需要可进行更改 2.使用CREATE DATABASE语句创建数据库 参数说明: database_name:...
  • R语言列表创建、基本操作

    千次阅读 2020-02-13 16:29:07
    它们在存储数据的类型、创建方式、结构复杂度,以及用于定位和访问其中个别元素的标记等方面均有所不同。本文将主要讲解列表的创建、访问以及基本命令,欢迎感兴趣的朋友访问个人主页。 列表(...
  • HTML之创建有序、无序和定义列表

    万次阅读 多人点赞 2018-06-19 15:46:35
    1、无序列表无序列表是一个项目的列表,...1.1 创建一个小黑圆圈无序列表&lt;h5&gt;一个默认的小黑圆圈无序列表&lt;/h5&gt; &lt;p&gt; 你最喜欢什么茶? &lt;ul&gt; &lt;li&gt
  • C#中列表List的创建与使用

    千次阅读 2019-02-20 21:50:29
    集合类 列表List 当我们有很多类型一样的数据时,可以使用数组来进行存储并管理,但是这样的缺点是数组的大小是提前给定的、是固定的。...创建方法1: List&lt;int&gt; scoreList = new List&lt;...
  • c#通过纯代码创建桌面快捷方式创建程序菜单项、将网页添加到收藏夹 本文章源代码Src下载地址:http://download.csdn.net/detail/testcs_dn/5141580 开始菜单》程序菜单项: 添加到收藏夹:   相关函数...
  • I want to create an empty list (or whatever is the best way) that can hold 10 elements. 我想创建一个可以容纳1
  • 列表List的创建和使用

    千次阅读 2016-04-17 17:48:41
    1,创建列表(列表可以存储任何类型的数据,在创建列表对象的时候首先要指定你要创建的这个列表要存储什么类型的)(泛型)  List scoreList = newList();  new List(){1,2,3}  newList(){"one","two"}  var ...
  • spring创建对象的三种方式详解

    万次阅读 2018-01-18 17:29:37
    本文主要讲解IOC容器创建对象的三种方式创建对象的三种方式1) 调用无参数构造器 2) 带参数构造器 3) 工厂创建对象 包括:3.1 工厂类,静态方法创建对象 3.2 工厂类,非静态方法创建对象1.调用无参数的...
  • list列表列表中的元素可以是不同的数据类型,使用从0开始的整数值作为默认索引; ndarray数组,数组中的元素必须是同种数据类型,也是使用从0开始的整数值作为默认索引; Series序列,是一种一维的结构,类似于一...
  • 由字典dictionary或列表list创建dataframe

    千次阅读 2019-04-05 21:07:13
    原文链接
  • Spring Initializr(Web界面方式
  • Excel 创建多级列表

    千次阅读 2018-11-19 00:57:07
    近期由于数据整理,需要用到excel的多级列表相关知识,现整理如下。 1 原理 多级列表的原理一句话总结为:依据父级列表内容与子级列表标题相同的关系,逐级索引...(C)根据数据源中的首行标题创建名称:公式-&g...
  • js创建自定义对象的几种方式

    千次阅读 2019-04-16 11:47:41
    1. 对象字面量方式(通过JSON来创建对象)。 对象字面量方式创建自定义对象的首选模式,简单方便。 var person = { name: '小白开发', job: 'html', getName: function () { alert(this.name); } } 缺点:使用...
  • 创建字典的几种方式(全)

    千次阅读 2020-08-04 10:04:55
    3,通过dict将二元组列表创建为字典 list = [('aaa', 1), ('bbb', 2), ('ccc', 3)] dic = dict(list) 4,通过dict和关键字参数(指的等式例如 spam = 1)创建 list = dict(aaa = 1, bbb =
  • python创建二维列表的两种方法

    万次阅读 多人点赞 2018-08-28 19:17:36
    python创建二维列表可以通过循环的方式创建,代码如下: 如此,就创建好了一个缺省值为0的10*10的二维列表,实现相同列表的方法还有b=[[0]*10]*10,而且判断 a==b 时,返回值为 True。但是通过此种方法建立的...
  • hive创建表定义的3种方式

    千次阅读 2018-06-20 19:37:16
    hive创建表定义的3种方式(1)、方式一 通过 create......as........selectCREATE TABLE default.weblog_comm AS select ip, time, req_url from default.weblog; (2)、方式二 通过like 进行hive复制表结构CREATE ...
  • python 创建二维列表的方法

    千次阅读 2019-07-27 17:20:50
    使用python创建二维列表有以下两种方式: 1、列表复制法: a=[[0]*width]*height 但是这种方法会导致如下问题: >>> a=[[0]*3]*4 >>> a [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]] &...
  • python创建二维列表的方法

    千次阅读 2018-11-07 16:59:22
    使用for 循环,规避浅拷贝 python创建二维列表可以通过循环的方式创建,代码如下: (稍后补充)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,219,653
精华内容 487,861
关键字:

列表的创建方式