• 《Python基础教程》


    • 第3章 使用字符串

      1. 字符串方法find返回的并非布尔值。如果find像这样返回0,就意味着它在索引0处找到 了指定的子串

      2. join可合并一个字符串列表,不能合并数字列表

        #合并字符串列表
        dirs = '', 'usr', 'bin', 'env'
        print('C:' + '\\'.join(dirs))

        #输出结果
        C:\usr\bin\env
      3. strip将字符串开头和末尾的空白(但不包括中间的空白)删除,并返回删除后的结果

        #默认删除开头和结尾的空字符串
        names = ['gumby', 'smith', 'jones']
        name = 'gumby '
        if name.strip() in names: print('Found it!')
        #执行结果
        Found it!

        *************************************
        #指定删除开头和结尾的字符串
        s = " I am very very very sorry "
        s.strip(' overys')
        #执行结果
        'I am'
      4. 方法translate与replace一样替换字符串的特定部分,但不同的是它只能进行单字符替换。 这个方法的优势在于能够同时替换多个字符,因此效率比replace高。使用translate前必须创建一个转换表。这个转换表指出了不同Unicode码点之间的转换关系

        #替换两个字符
        table = str.maketrans('cs', 'kz')
        print(table)
        'this is an incredible test'.translate(table)
        #执行结果
        {99: 107, 115: 122}
        'thiz iz an inkredible tezt'

        *************************************
        #替换字符并删除空格
        table = str.maketrans('cs', 'kz', ' ')
        'this is an incredible test'.translate(table)
        #执行结果
        'thizizaninkredibletezt'
        • 第4章 当索引行不通时

          1. 字典由键及其相应的值组成,这种键值对称为项(item)

          2. 与list、tuple和str一样,dict其实根本就不是函数,而是一个类

          3. 相比于检查列表是否包含指定的值,检查字典是否包含指定的键的效率更高。数据结构 越大,效率差距就越大。

          4. 要对字典执行字符串格式设置操作,不能使用format

            和命名参数,而必须使用format_map

            phonebook = {'Beth': '9102', 'Alice': '2341', 'Cecil': '3258'}
            "Cecil's phone number is {Cecil}.".format_map(phonebook)
            #执行结果
            "Cecil's phone number is 3258."
        • 第5章 条件、循环及其他语句

          1. 带星号的变量最终包含的总是一个列表,在变量和值的个数相同时亦如此,详见以下例子。

            a, *b, c = "abc"
            a, b, c
            #执行结果
            ('a', ['b'], 'c')
          2. 标准值False和None、各种类型(包括浮点数、复数等)的数值0、空序列(如空 字符串、空元组和空列表)以及空映射(如空字典)都被视为假,而其他各种值都被视为真1, 包括特殊值True2

            bool('') -->False
            bool(0)  -->False
            bool('I think, therefore I am') -->True
            bool(42) -->True
          3. 要获悉字母的顺序值,可使用函数ord。这个函数的作用与函数chr相反

          4. ==用来检查两个对象是否相等,而is用来检查两个对象是否相同(是同一个对象)

          5. 将整数与字符串相加毫无意义,检查一个整数是否小于一个字符串也是一样

          6. x is y是指x和y是同一个对象,x in y是指x是容器(如序列)y的成员;都属于Python比较运算符。

          1. 要结束(跳出)循环,可使用break;语句continue没有break用得多,它结束当前迭代,并跳到下一次迭代开头。

          2. 你可 能编写了一条if语句并想尝试运行它,但其中缺少一个代码块,这些代码不能运行,因为在Python中代码块不能为空。要修复这个问题,只需在中间的代码 块中添加一条pass语句即可

          3. eval是一个类似于exec的内置函数。exec执行一系列Python语句,而eval计算用字符串表示 的Python表达式的值,并返回结果(exec什么都不返回,因为它本身是条语句)

          函数 说明
          chr(n) 返回一个字符串,其中只包含一个字符,这个字符对应于传入的顺序值n(0 ≤ n < 256)
          eval(source[,globals[,locals]]) 计算并返回字符串表示的表达式的结果
          exec(source[, globals[, locals]]) 将字符串作为语句执行
          enumerate(seq) 生成可迭代的索引值对
          ord(c) 接受一个只包含一个字符的字符串,并返回这个字符的顺序值(一个整数)
          range([start,] stop[, step]) 创建一个由整数组成的列表
          reversed(seq) 按相反的顺序返回seq中的值,以便用于迭代
          sorted(seq,cmp[,reverse]) 返回一个列表,其中包含seq中的所有值且这些值是经过排序的
          xrange([start,] stop[, step]) 创建一个用于迭代的xrange对象
          zip(seq1, seq2,...) 创建一个适合用于并行迭代的新序列
        函数 说明
        string.capwords(s[, sep]) 使用split根据sep拆分s,将每项的首字母大写,再以空格为分隔符将它们合并起来
        ascii(obj) 创建指定对象的ASCII表示
      5. split是一个作用与join相反,用于将字符串拆分为序列。如果没有指定分隔符,将默认在单个或多个连续的空白字符(空格、制表符、换行符 等)处进行拆分

        #使用制定分隔符拆分序列
        '/usr/bin/env'.split('/')
        #输出结果
        ['', 'usr', 'bin', 'env']

        *************************************
        #不使用制定分隔符拆分
        'Using the default'.split()
        #执行结果
        ['Using', 'the', 'default']

Python基础教程-02的更多相关文章

  1. (Python基础教程之十三)Python中使用httplib2 – HTTP GET和POST示例

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  2. 改写《python基础教程》中的一个例子

    一.前言 初学python,看<python基础教程>,第20章实现了将文本转化成html的功能.由于本人之前有DIY一个markdown转html的算法,所以对这个例子有兴趣.可仔细一看 ...

  3. .Net程序员之Python基础教程学习----列表和元组 [First Day]

    一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...

  4. python基础教程笔记—即时标记(详解)

    最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...

  5. python基础教程(一)

    之所以选择py交易有以下几点:1.python是胶水语言(跨平台),2.python无所不能(除了底层),3.python编写方便(notepad++等文本编辑器就能搞事情),4.渗透方面很多脚本都是 ...

  6. Python基础教程2上的一处打印缺陷导致的代码不完整#1

    #1对代码的完善的 出现打印代码处缺陷截图: 图片上可以看到,定义的request根本没有定义它就有了.这个是未定义的,会报错的,这本书印刷问题,这个就是个坑,我也是才发现.花了点时间脱坑. 现在发完 ...

  7. python基础教程(第二版)

    开始学习python,根据Python基础教程,把里面相关的基础章节写成对应的.py文件 下面是github上的链接 python基础第1章基础 python基础第2章序列和元组 python基础第3 ...

  8. python基础教程1:入门基础知识

    写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ...

  9. Python基础教程-第3版(文字版) 超清文字-非扫描版 [免积分、免登录]

    此处免费下载,无需账号,无需登录,无需积分.收集自互联网,侵权通知删除. 点击下载:Python基础教程-第3版 备用下载:Python基础教程-第3版

随机推荐

  1. 苹果Mac电脑永久路由的添加 & Mac 校园网连接教程

    学校校园网面向全校师生开放,无奈Windows用户基数大,学校只为Windows平台制作了内网连接工具,Mac平台资源较少,本人查阅相关资料后,总结整理出以下步骤,方便本校学生连接校园网.有永久路由添 ...

  2. #《Essential C++》读书笔记# 第二章 面向过程的编程风格

    基础知识 函数必须先被声明,然后才能被调用(被使用).函数的声明让编译器得以检查后续出现的使用方式是否正确--是否有足够的参数.参数类型是否正确,等等.函数声明不必提供函数体,但必须指明返回类型.函数 ...

  3. 简单IOC容器实现

    前言 本文是为了学习Spring IOC容器的执行过程而写,不能完全代表Spring IOC容器,只是简单实现了容器的依赖注入和控制反转功能,无法用于生产,只能说对理解Spring容器能够起到一定的作 ...

  4. 一、threejs————灯光阴影

    threejs设置阴影有三个注意点 1.只有支持阴影的灯光才可以 pointLight,spotlight,directionallight 2.添加摄像机辅助器 THREE.CameraHelper ...

  5. vue实现打印功能

    通过npm 安装插件 1.安装  npm install vue-print-nb --save 2.引入  安装好以后在main.js文件中引入 import Print from 'vue-pri ...

  6. open Live Writer 代码插件安装

    1,第一步:下载open live writer插件,下载地址:http://www.cnblogs.com/memento/p/5995173.html 2,拷贝文件到Plugins目录(自己建立) ...

  7. 基于java开发jsp+ssm+mysql实现的在线考试系统 源码下载

    实现的关于在线考试的功能有:用户前台:用户注册登录.查看考试信息.进行考试.查看考试成绩.查看历史考试记录.回顾已考试卷.修改密码.修改个人信息等,后台管理功能(脚手架功能不在这里列出),科目专业管理 ...

  8. Redis入门-02-CentOS7环境搭建

    CentOS7下redis安装过程,安装后需要开启端口号6379 #下载 wget http://download.redis.io/releases/redis-3.2.4.tar.gz #解压 t ...

  9. MVC开发之注入容器Ninject的使用

    背景 在不使用注入容器之前,我们的项目往往存在着大量耦合的类,这使得我们在开发大型项目时难以维护.比如下面这个简单的MVC框架的例子,计算购物车的产品价格总和: /// <summary> ...

  10. 获取redis cluster中所有节点的内存使用情况

    需求:获取redis cluster集群中所有节点的内存使用情况. ip_port=`redis-cli -h $ -p $ -a abc123 -c cluster nodes | awk '{pr ...