Python学习系列(三)(字符串)

Python学习系列(一)(基础入门)

Python学习系列(二)(基础知识)

一个月没有更新博客了,最近工作上有点小忙,实在是没有坚持住,丢久又有感觉写的必要了,可见本人的坚持精神不佳,本系列没有任何目的,纯属业余学习,或者说是一时兴趣所致。通过本文,能够学习字符串的基本操作,日积月累,多多练习,学到了,会用了才是王道。

一、基本概念

1,关于转义问题
1)“''”方式:
 >>> s="Hello 'Jack'……"
>>> print s
Hello 'Jack'……
>>>

2)\转义字符:

 >>> s="Hello \"Jack\"……"
>>> print s
Hello "Jack"……
>>>

3)'''三引号方式:

 >>> s='''Hello "Jack"……'''
>>> print s
Hello "Jack"……
>>>

2,特殊字符:

1)转义字符:\n回车换行;\t下一制表位;\"双引号;\'单引号;\\输出斜杠

2)原字符串(输出):

 >>> print 'E:\temp\node\test.py'
E: emp
ode est.py
>>> print r'E:\temp\node\test.py'
E:\temp\node\test.py
>>>

3,字符串访问:

1)index索引:下标值从零开始,与C是一致的。
 >>> s='www.baidu.com'
>>> print s[0],s[1],s[2]
w w w
>>>

2)slice切片:Str_name[Start:end:step]==>start:访问字符串的起点;end为终点;step为步长,默认为+1

 >>> s='www.baidu.com'
>>> print s[2:5]
w.b
>>>

i)正切片:step为正数,方向从左至右

不指定start:

 >>> print s[:6]
www.ba
>>>

不指定end:

 >>> print s[4:]
baidu.com
>>>

start和end都不指定:

 >>> print s[:]
www.baidu.com
>>>

step不为1:

 >>> print s[::2]
wwbiucm (说明:相当于ww w. ba id u. co m按照空格分割)
>>>

ii)负切片:step为负数,方向从右至左

start为正,end为负,step为负:
 >>> print s[13:-3:-1]
mo
>>>

start为负,end为负,step为负:

 >>> print s[-1:-3:-1]
mo
>>>

start和end都不指定,step为-1:

 >>> print s[::-1]
moc.udiab.www
>>>

4、字符串运算:

1)加法:
 >>> s1='www.baidu.com'
>>> s2='python'
>>> print s1,s2 #对比一下逗号的用法
www.baidu.com python
>>> print s1+s2
www.baidu.compython
>>>

2)乘法:相当于同一个字符(串)的n次相加(Python独有的)

 >>> print s1*2
www.baidu.comwww.baidu.com
>>>

3)(not)in运算:判断一个字符(串)是否在某个字符串里面,(不)存在返回为真,否则为假

 >>> print 'w' in s1
True
>>> print 'k' in s1
False
>>> print 'k' not in s1
True
>>>

5,字符串函数:

例:

 >>> print s1.find('w',2)
2
>>> print s1.find('j')
-1
>>> print s1.count('w')
3
>>> print s1.replace('w','k',2)
kkw.baidu.com
>>>

二、实践演练(本部分后续补上完整实例)

1,提取网页中的超级链接地址

1)分析步骤:(编程思路很重要!!!)

 s="""<a href="http://www.cnblogs.com/zhangbc/p/3501205.html" class="c_b_p_desc_readmore">阅读全文</a>"""
url=s[s.find('href')+6:s.find('html')+4]
print url

网址加载在浏览器:

 import webbrowser as web   #引入第三方库,并用as取别名
url='http://www.cnblogs.com/zhangbc'
web.open_new_tab(url)

关闭浏览器:

 import os
import time
time.sleep(10) os.system('taskkill /F /IM SogouExplorer.exe')#注意空格

 三,总结

本文介绍了Python的字符串知识的相关使用,通过练习,应该对Python的字符串有一个初步的认识。

Python学习系列(三)(字符串)的更多相关文章

  1. python学习第三次记录

    python学习第三次记录 python中常用的数据类型: 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set). int.数 ...

  2. Python学习系列(九)(IO与异常处理)

    Python学习系列(九)(IO与异常处理) Python学习系列(八)( 面向对象基础) 一,存储器 1,Python提供一个标准的模块,称为pickle,使用它既可以在一个文件中存储任何Pytho ...

  3. Python学习系列(六)(模块)

    Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...

  4. Python学习系列(五)(文件操作及其字典)

    Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件      在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...

  5. Python学习系列(四)(列表及其函数)

    Python学习系列(四)(列表及其函数) Python学习系列(一)(基础入门) Python学习系列(二)(基础知识) Python学习系列(三)(字符串) 一.基本概念 1,列表是什么?     ...

  6. Python学习系列(二)(基础知识)

    Python基础语法 Python学习系列(一)(基础入门) 对于任何一门语言的学习,学语法是最枯燥无味的,但又不得不学,基础概念较繁琐,本文将不多涉及概念解释,用例子进行相关解析,适当与C语言对比, ...

  7. Python学习系列(四)Python 入门语法规则2

    Python学习系列(四)Python 入门语法规则2 2017-4-3 09:18:04 编码和解码 Unicode.gbk,utf8之间的关系 2.对于py2.7, 如果utf8>gbk, ...

  8. Python学习系列(八)( 面向对象基础)

     Python学习系列(八)( 面向对象基础) Python学习系列(七)( 数据库编程) 一,面向对象 1,域:属于一个对象或类的变量.有两种类型,即实例变量—属于每个实例/类的对象:类变量—属于类 ...

  9. Python学习系列(七)( 数据库编程)

    Python学习系列(七)( 数据库编程)        Python学习系列(六)(模块) 一,MySQL-Python插件       Python里操作MySQL数据库,需要Python下安装访 ...

随机推荐

  1. java判断集合list是为空

    if(null == list || list.size() ==0 ){ } list.isEmpty()和list.size()==0 没有区别 isEmpty()判断有没有元素而size()返回 ...

  2. 1044: [HAOI2008]木棍分割

    1044: [HAOI2008]木棍分割 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2161  Solved: 779[Submit][Statu ...

  3. 初入spring boot(四 )web项目

    1. 模板引擎 spring boot提供了大量的模板引擎,包括FreeMark.Groovy.Thymeleaf.Velocity等,但spring boot中推荐用Thymeleaf,因为Thym ...

  4. DRBD分布式块设备复制

    一. DRBD介绍 1.1.数据镜像软件DRBD介绍分布式块设备复制(Distributed Relicated Block Deivce,DRBD),是一种基于软件.基于网络的块复制存储解决方案,主 ...

  5. 统计mysql数据库中数据表/字段等数量的sql

    1.查询一个表中有多少个字段: SELECT COUNT(*) FROM information_schema. COLUMNSWHERE table_schema = '数据库名'AND table ...

  6. 有谁知道什么工具测试IOS手机上APP的性能软件啊?

    有谁知道什么工具测试IOS手机上APP的性能软件啊?

  7. java 实现图片拼接

    1.想要实现多个图片的纵向和横向拼接.实现代码如下 2.补充发现横向拼接的一个bug 宽度没有增加(已修复) 百度地址:工具jar下载 链接:https://pan.baidu.com/s/1uZCN ...

  8. spring3: 对JDBC的支持 之 Spring提供的其它帮助 SimpleJdbcInsert/SimpleJdbcCall/SqlUpdate/JdbcTemplate 生成主键/批量处理

    7.4  Spring提供的其它帮助 7.4.1  SimpleJdbc方式 Spring JDBC抽象框架提供SimpleJdbcInsert和SimpleJdbcCall类,这两个类通过利用JDB ...

  9. yii2: oracle汉字占用字节长度

    OCIStmtExecute: ORA-12899: value too large for column "WSG"."WX_ENTER_TASTE".&qu ...

  10. Go语言实现FastDFS分布式存储系统WebAPI网关

    前言 工作需要,第一次使用 Go 来实战项目. 需求:采用 golang 实现一个 webapi 的中转网关,将一些资源文件通过 http 协议上传至 FastDFS 分布式文件存储系统. 一.Fas ...