一、字符串类型
1、普通字符串
s1='abef\neiwo'
print s1
print type(s1)
结果:
abef
eiwo
<type 'str'>
2、原始字符串
s2=r'abef\neiwo'
print s2
print type(s2)
结果abef\neiwo
<type 'str'>
3、Unicode字符串
s3=u'abef\neiwo'
print s3
print type(s3)
结果:
abef
eiwo
<type 'unicode'>
二、转义符:以\开始
转义字符 描述
\(在行尾时) 续行符,也就是多行语句符
\\ 反斜杠符号
\' 单引号
\" 双引号
\n 换行
\t 横向制表符
\r 回车
回车换行:\r\n
 
三、字符串的格式化
1、%的使用
print 'I love python! I am %d years old.'%18
I love python! I am 18 years old.
2、定义长度
print 'I love python! I am %10d years old.'%18
I love python! I am 18 years old.右对齐是个长度
print 'I love python! I am %-10d years old.'%18 左对齐显示10个字符的长度
 
3、浮点数
print '%.2f'%2.34567
print 'aaa%10faaa'%2.34567
 
4、显示数字对应的ascii
print '%c'%68
结果:D
 
print 'I love python! I am %10d years old.'%18
print 'I love %-10s! I am %d years old.'%('python', 18)
print 'aaa%10faaa'%2.34567
print '%c'%68
 
四、字符串的表达式运算
+ * [] [: :] in cmp r/R原始字符串
b1='abc' 结果
b2='def'
print b1+b2 abcdef
print b1*2 abcabc
print b1[1] b
print b1[::2] ac
if 'c' in b1:
print 'ok' ok
 
五、字符串常用的方法
1、strip('char')
删除字符串位于开头和结尾处的字符,并新生成一个字符串
s.strip() 删除开头和结尾多余的空格
s='123irm'
s.strip('21') 结果:'3irm' 只要边上(开头和结尾)的字符在删除序列内,就删除掉
s.lstrip('char') 删除字符串开头的 char字符
s.rstrip('char') 删除字符串结尾处的char字符
 
2、大小写转换
s.lower() 把字符串中的大写字母全变为小写
s.upper() 把字符串中的小写字母全变为大写
s.islower() 判断字符串是否由小写字母组成(只判断字母,可以包含其他字符)
 
3、s.find(substr,[start],[end]) 查找字符串
start:默认值为0
end:默认值为-1
查找到,返回找到字符串第一个字符的下标
没有找到,返回-1
s='abdce'
print s.find('dc') 结果:2
 
4、s.replace(oldstr, newstr[, max])
newstr来替换oldstr ,max 为最多替换多少次,可选项
 
5、s.split([[sep],num=string.count(sep))
分割函数,最终生成列表。将一个字符串分裂成多个字符串组成的列表
sep:分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等
num:分割次数
list=s.split()
s='edaefawr'
print s.split('a') 结果;['ed','ef','wr']
 
6、str.join(seq)
与split()相反 ,把序列连接成字符串
seq:要连接的字符序列
str:用来连接序列的字符串
str='-'
seq=("a","b","c")
print str.join(seq) 结果:a-b-c
 
7、ord(char)
获取字符的ascii值
 
8、s.startswith('substr')
判断字符串是否以'substr'开始
 
9、字符串添加内容
str += 'a'+str(n)+'x'+'^'+str(n)+'+'

Python之数据结构:字符串的更多相关文章

  1. Python常见数据结构-字符串

    字符串基本特点 用引号括起来,单引号双引号均可,使用三个引号创建多行字符串. 字符串不可变. Python3直接支持Unicode编码. Python允许空字符串存在,不含任何字符且长度为0. 字符串 ...

  2. (python)数据结构---字符串

    一.概述 由一个个字符组成的有序序列. 使用单引号.双引号.三引号引住的字符序列. 不可变.线性的数据结构. 二.字符串的相关操作 1.元素访问----下标 字符串是线性的数据结构,可以使用索引去访问 ...

  3. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  4. (python数据分析)第03章 Python的数据结构、函数和文件

    本章讨论Python的内置功能,这些功能本书会用到很多.虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的. 我们会从Python最基础 ...

  5. python的数据结构分类,以及数字的处理函数,类型判断

    python的数据结构分类: 数值型 int:python3中都是长整形,没有大小限制,受限内存区域的大小 float:只有双精度型 complex:实数和虚数部分都是浮点型,1+1.2J bool: ...

  6. Python 基本数据结构

    Python基本数据结构 数据结构:通俗点儿说,就是存储数据的容器.这里主要介绍Python的4种基本数据结构:列表.元组.字典.集合: 格式如下: 列表:list = [val1, val2, va ...

  7. 转 Python常见数据结构整理

    http://www.cnblogs.com/jeffwongishandsome/archive/2012/08/05/2623660.html Python常见数据结构整理 Python中常见的数 ...

  8. Python常用数据结构(列表)

    Python中常用的数据结构有序列(如列表,元组,字符串),映射(如字典)以及集合(set),是主要的三类容器 内容 序列的基本概念 列表的概念和用法 元组的概念和用法 字典的概念和用法 各类型之间的 ...

  9. Python中关于字符串的问题

    在Python里面,字符串相加经常会出现'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)这样的 ...

  10. python出输出字符串方式:

    python出输出字符串方式: >>> who='knights' >>> what='NI' >>> print ('we are the',w ...

随机推荐

  1. Drupal的入门学习

    1. 注意content中的区别 Article和Basic page的区别 a.输入字段不一样,Article内容多了两个字段:tag和图片. b.内容的默认设置不一样,Article默认允许评论, ...

  2. css中如何把鼠标变成手

    css中鼠标放上去变成手型怎么设置:其实就是一个属性的问题, css的cursor属性 cursor:pointer; 其实这个属性我也记了很多,到现在都容易拼写错误,不过好在编辑器有提示. defa ...

  3. 快速搭建lvs + keepalived + nginx

      环境:   VIP         192.168.2.224 LVS        192.168.2.217     centos7 nginx1    192.168.2.231     c ...

  4. 十一、Shell 文件包含

    Shell 文件包含 和其他语言一样,Shell 也可以包含外部脚本.这样可以很方便的封装一些公用的代码作为一个独立的文件. Shell 文件包含的语法格式如下: . filename # 注意点号( ...

  5. shell 流水账

    在shell脚本运行时,会先查找系统环境变量ENV,该变量指定了环境文件(加载顺序通常是/etc/profile ~/.bash_profile ~/.bashrc /etc/bashrc) 设置全局 ...

  6. win10.net 安装出问题0x800F70422

    因为安装ooracle数据库的时候需要用到.net但安装的时候出了0x800F70422, 随后就去网上查了下这个错出现的原因,发现是我之前把Windows自带的更新给禁用了 只要把它再开启就行了.

  7. 让你提高效率的 Linux 技巧

    想要在 Linux 命令行工作中提高效率,你需要使用一些技巧. 巧妙的 Linux 命令行技巧能让你节省时间.避免出错,还能让你记住和复用各种复杂的命令,专注在需要做的事情本身,而不是你要怎么做.以下 ...

  8. JZOJ 5185. 【NOIP2017提高组模拟6.30】tty's sequence

    5185. [NOIP2017提高组模拟6.30]tty's sequence (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB ...

  9. while循环中continue和break的区别

    除了满足while条件外,还有两种方法可以终止循环,它们分别是break和continue.它们唯一的区别是break跳出整个循环,直接执行下面的代码了;而continue是终止当次循环,不执行下面的 ...

  10. 17,基于scrapy-redis两种形式的分布式爬虫

    redis分布式部署 1.scrapy框架是否可以自己实现分布式? - 不可以.原因有二. 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls ...