master
/ 5.1 序列通用操作.ipynb

5.1 序列通用操作.ipynb @master

341084b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 序列通用操作"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "文本序列(字符串)、列表、元组和 range 等序列数据类型具有一些共性。  \n",
    "他们内部元素之间都存在先后顺序,都支持序列的拼接、重复、索引、切片、测试长度、最大值、最小值和存在性测试等操作。  \n",
    "各操作的描述如表 6.1 所示,s 和 t 是具有相同类型的序列,n、i、j 和 k 是整数而 x 是任何满足 s 所规定的类型和值限制的任意对象。  \n",
    "in 和 not in 操作具有与比较操作相同的优先级。  \n",
    "+ (拼接) 和 * (重复) 操作具有与对应数值运算相同的优先级。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "| 操作符 | 描述 |\n",
    "| :---- | :---- |\n",
    "| s[i] | 索引,返回序列 s 的第 i 项,项序号为整数 |\n",
    "| s[start:end[:step]] | 切片,返回序列 s 从start到end (不包括end)的步长为step的字符生成新的序列,step缺省时,步长为1,返回序号从start到end的子序列。 |\n",
    "| s +   t | 拼接两个序列 s 和 t,仅适用于列表和字符串 |\n",
    "| s *   n 或n *   s | n 为整数,将序列 s 与自身拼接 n 次生成新序列,range不支持此操作 |\n",
    "| len(s) | 返回序列 s 的长度,序列包含元素的个数或字符串包含字符的个数 |\n",
    "| min(s,*[,key,   default]) | 返回序列 s的最小值,key关键字缺省时按元素值比较 |\n",
    "| max(s,*[,key,   default]) | 返回序列 s的最大值,key关键字缺省时按元素值比较 |\n",
    "| s.count(x) | x 在 s 中出现的总次数 |\n",
    "| s.index(x[,   i[, j]]) | 元素或字符 x 在序列 s 中首次出现项的索引号,i值存在时表示从索引号 i 处开始查找 x,j 存在时表示查找范围在 i 和 j 之间。 |\n",
    "| x in   s | 如果基本序列 s 中的某项等于 x ,则结果为 True,否则结果 False<br />如果字符串 s 中的任一子序列与 x 相等,则结果为True,否则结果False |\n",
    "| x   not in s | 如果基本序列 s 中的某项等于 x ,则结果为 False,否则结果 True<br />如果字符串 s 中的任一子序列与 x 相等,则结果为False,否则结果True |\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在序列中循环时,用 enumerate() 函数可以同时取出位置索引和对应的值:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 北京\n",
      "1 上海\n",
      "2 天津\n",
      "3 重庆\n"
     ]
    }
   ],
   "source": [
    "for i, city in enumerate(['北京', '上海', '天津', '重庆']):\n",
    "    print(i, city)  # 默认从0开始计数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 北京\n",
      "2 上海\n",
      "3 天津\n",
      "4 重庆\n"
     ]
    }
   ],
   "source": [
    "for i, city in enumerate(['北京', '上海', '天津', '重庆'], 1):\n",
    "    print(i, city)  # 从1开始计数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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": 4
}