Python基础教程-02
《Python基础教程》
第3章 使用字符串
字符串方法find返回的并非布尔值。如果find像这样返回0,就意味着它在索引0处找到 了指定的子串
join可合并一个字符串列表,不能合并数字列表
#合并字符串列表
dirs = '', 'usr', 'bin', 'env'
print('C:' + '\\'.join(dirs))
#输出结果
C:\usr\bin\env
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'方法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章 当索引行不通时
字典由键及其相应的值组成,这种键值对称为项(item)
与list、tuple和str一样,dict其实根本就不是函数,而是一个类
相比于检查列表是否包含指定的值,检查字典是否包含指定的键的效率更高。数据结构 越大,效率差距就越大。
要对字典执行字符串格式设置操作,不能使用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章 条件、循环及其他语句
带星号的变量最终包含的总是一个列表,在变量和值的个数相同时亦如此,详见以下例子。
a, *b, c = "abc"
a, b, c
#执行结果
('a', ['b'], 'c')标准值False和None、各种类型(包括浮点数、复数等)的数值0、空序列(如空 字符串、空元组和空列表)以及空映射(如空字典)都被视为假,而其他各种值都被视为真1, 包括特殊值True2
bool('') -->False
bool(0) -->False
bool('I think, therefore I am') -->True
bool(42) -->True要获悉字母的顺序值,可使用函数ord。这个函数的作用与函数chr相反
==用来检查两个对象是否相等,而is用来检查两个对象是否相同(是同一个对象)
将整数与字符串相加毫无意义,检查一个整数是否小于一个字符串也是一样
x is y是指x和y是同一个对象,x in y是指x是容器(如序列)y的成员;都属于Python比较运算符。
要结束(跳出)循环,可使用break;语句continue没有break用得多,它结束当前迭代,并跳到下一次迭代开头。
你可 能编写了一条if语句并想尝试运行它,但其中缺少一个代码块,这些代码不能运行,因为在Python中代码块不能为空。要修复这个问题,只需在中间的代码 块中添加一条pass语句即可
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表示 split是一个作用与join相反,用于将字符串拆分为序列。如果没有指定分隔符,将默认在单个或多个连续的空白字符(空格、制表符、换行符 等)处进行拆分
#使用制定分隔符拆分序列
'/usr/bin/env'.split('/')
#输出结果
['', 'usr', 'bin', 'env']
*************************************
#不使用制定分隔符拆分
'Using the default'.split()
#执行结果
['Using', 'the', 'default']
Python基础教程-02的更多相关文章
- (Python基础教程之十三)Python中使用httplib2 – HTTP GET和POST示例
Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...
- 改写《python基础教程》中的一个例子
一.前言 初学python,看<python基础教程>,第20章实现了将文本转化成html的功能.由于本人之前有DIY一个markdown转html的算法,所以对这个例子有兴趣.可仔细一看 ...
- .Net程序员之Python基础教程学习----列表和元组 [First Day]
一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...
- python基础教程笔记—即时标记(详解)
最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...
- python基础教程(一)
之所以选择py交易有以下几点:1.python是胶水语言(跨平台),2.python无所不能(除了底层),3.python编写方便(notepad++等文本编辑器就能搞事情),4.渗透方面很多脚本都是 ...
- Python基础教程2上的一处打印缺陷导致的代码不完整#1
#1对代码的完善的 出现打印代码处缺陷截图: 图片上可以看到,定义的request根本没有定义它就有了.这个是未定义的,会报错的,这本书印刷问题,这个就是个坑,我也是才发现.花了点时间脱坑. 现在发完 ...
- python基础教程(第二版)
开始学习python,根据Python基础教程,把里面相关的基础章节写成对应的.py文件 下面是github上的链接 python基础第1章基础 python基础第2章序列和元组 python基础第3 ...
- python基础教程1:入门基础知识
写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ...
- Python基础教程-第3版(文字版) 超清文字-非扫描版 [免积分、免登录]
此处免费下载,无需账号,无需登录,无需积分.收集自互联网,侵权通知删除. 点击下载:Python基础教程-第3版 备用下载:Python基础教程-第3版
随机推荐
- Office Tool Plus - 一个OFFICE 管理、下载、安装器
文章选自我的博客:https://blog.ljyngup.com/archives/160.html/ 教程摘自官方教程. 官网:https://otp.landian.vip/zh-cn/ Off ...
- .Net框架的模块代码生成器--其二(dotnet tool)
以下是个人工作场景,继上篇后,还剩下第3步骤没有解决 3.(这个可能我们公司才有)每个模型还要在每一层那里创建一个文件,这个模型的增删改查逻辑就在这里写 这个我是自己写一个.Net Core命令行工具 ...
- Foxmail for windows 客户端设置和 IMAP、POP3/SMTP 的设置
Foxmail支持微信扫码.手机验证码.账号密码三种方式新建腾讯企业邮箱. 注意:目前仅foxmail 7.2.11版本支持微信扫码和手机验证码新建腾讯企业邮箱,可以foxmail官网https:// ...
- 【01】HTML_day01_02-认识HTML
typora-copy-images-to: media 第01阶段.前端基础.认识HTML 学习目标 理解 HTML的概念 HTML标签的分类 HTML标签的关系 HTML标签的语义化 应用 HTM ...
- Wix 快速开发安装包程序 (二)安装行为
上一小节,主要介绍了构建最小级别的安装包,这个安装包所做的事情很简单,主要是打包好一些文件,然后放到用户机器的某个位置下面. 这个小节,主要是总结安装过程的各种行为如何使用Wix编写. 一.写注册表 ...
- Android记事本在菜单栏添加搜索按钮方法
效果图 这个app结构和我之前将记事本开发的博客基本一致,我这里直接讲一下怎样添加 使用的开发软件为android studio 首先在res目录下新建文件夹menu,添加目录布局文件main_men ...
- 七月在线spark教程
链接:https://pan.baidu.com/s/1Ir5GMuDqJQBmSavHC-hDgQ 提取码:qd2e
- js 字符串中"\"
var a = '\a' console.log(a) // a ???? js 字符串中"\" 有特殊功能,反斜杠是一个转义字符 js 中 遇到字符串中有'\'时候需要注意 '\ ...
- HDU5608
题意 英文 做法 设\(g(n)=n^2-3n+2\),有\(g(n)=\sum\limits_{d|n}f(d)\),反演一下有\(f(n)=\sum\limits_{d|n}\mu(\frac{n ...
- Maven的作用
Maven的作用 1.在开发中,为了保证编译通过,我们会到处去寻找jar包,当编译通过了,运行的时候,却发现"ClassNotFoundException",我们想到的是,难道还差 ...