master
/ 6.2.1 列表的创建.ipynb

6.2.1 列表的创建.ipynb @master

341084b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d487d71
 
 
 
 
 
 
 
 
 
 
 
 
 
341084b
 
 
d487d71
341084b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 6.2 列表的创建"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "列表的创建主要有以下几种方法:\n",
    "\n",
    "(1)将用方括号“<font color=Red>__[]__</font>”括起来的一组数据赋值给一个变量,数据可以是多个,也可以是0个,数据个数为0时创建一个空列表。\n",
    "\n",
    "(2)使用<font color=Red>__list()__</font>函数,将元组、range对象、字符串、字典的键、集合或其它类型的可迭代对象类型的数据转换为列表,当参数为空时生成一个空列表。\n",
    "\n",
    "(3)使用<font color=Red>__split()__</font>函数将一个字符串按指定特符切分后,转为列表。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[3, 4, 5, 6, 7]\n",
      "[]\n",
      "[1, 2, 3, 4, 5]\n",
      "[0, 1, 2, 3, 4]\n",
      "['1', '2', '3', '4', '5']\n",
      "['我', '是', '中', '国', '人']\n"
     ]
    }
   ],
   "source": [
    "Ls = [3,4,5,6,7]\n",
    "print(Ls)\n",
    "\n",
    "print(list())             # list()函数的参数为空时,产生一个空列表,输出结果为:[]\n",
    "L1= list((1,2,3,4,5))     # 将元组(1,2,3,4,5) 转为列表\n",
    "print(L1)                 # 输出结果为:[1, 2, 3, 4, 5]\n",
    "L2 = list(range(5))       # 将range对象转为列表\n",
    "print(L2)                 # 输出结果为:[0, 1, 2, 3, 4]\n",
    "L3 = list('12345')        # 将字符串转为列表\n",
    "print(L3)                 # 输出结果为:['1', '2', '3', '4', '5']\n",
    "s = '我,是,中,国,人'      # 这是一个字符串\n",
    "L = s.split(',')          # 根据逗号(,)对字符串s进行切分并转为列表\n",
    "print(L)                  # 输出结果为:['我', '是', '中', '国', '人']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由于列表中可以包含不同类型的数据,各元素可能占用空间大小不同,所以在创建列表时,Python采用<font color=Red>__动态分配__</font>的方法进行数据存储,数据存储在大小不一、不连续的内存单元中,以提高内存的利用率。\n",
    "\n",
    "但随之带来的问题是,当列表中的数据项较多时,遍历列表的效率会较低,遍历时间较长。因此在访问数据量较大的列表时,一般会根据所解决问题的需求来采用适当的方法提高效率,比如减少循环次数,或转换为集合或字典及使用相关方法等等。\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}