Python学习进程(7)字符串
本节介绍字符串的创建与操作方法。
(1)创建字符串:
创建字符串既可以用单引号也可以用双引号:
root@SJM:/home/sunjimeng/桌面# cat text.py
#单引号和双引号都可以创建字符串
str1='MenAngel'
str2="SunJiMeng"
print(str1,' is ',str2)
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
MenAngel is SunJiMeng
root@SJM:/home/sunjimeng/桌面#
(2)访问字符串中指定的值:
Python不支持单字符类型,单字符也在Python也是作为一个字符串使用。
Python访问子字符串,可以使用方括号来截取字符串:
root@SJM:/home/sunjimeng/桌面# cat text.py
#单引号和双引号都可以创建字符串
str1='MenAngel'
str2="SunJiMeng"
print(str1,' is ',str2)
print('str1[0]=',str1[0])
print('str2[5:9]',str2[5:9])
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
MenAngel is SunJiMeng
str1[0]= M
str2[5:9] Meng
(3)更新字符串的值:
root@SJM:/home/sunjimeng/桌面# cat text.py
#单引号和双引号都可以创建字符串
str1='MenAngel'
str2="SunJiMeng"
temp='Hello '+str1;
print('当前字符串为',temp)
temp=temp[:6]+str2
print('当前字符查为',temp)
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
当前字符串为 Hello MenAngel
当前字符查为 Hello SunJiMeng
(4)转义字符:
与c语言类似,在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。

root@SJM:/home/sunjimeng/桌面# cat text.py
#1.续行符测试
print('MenAngel is studying\
Python language!')
#2.测试反斜杠
print('windows系统文件的路径:c:\\Document\\MenAngel')
#3.测试输出单引号和双引号
print('单引号:\';双引号:\"')
#4.测试回车和换行
print('测试换行\n')#留出一行
print('测试回车\r')#回车没有明显效果,有什么用呢?
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
MenAngel is studying Python language!
windows系统文件的路径:c:\Document\MenAngel
单引号:';双引号:"
测试换行 测试回车
(5)字符串运算符:
字符串运算符用非函数的方式操作字符串,比较方便和快速:

字符串运算符的实例:
root@SJM:/home/sunjimeng/桌面# cat text.py
str1='MenAngel'
str2='SunJiMeng'
#1.+操作符的测试
print(str1+' '+str2)
#2.*操作符的测试
print((str1+' ')*3)
#3.[]和[:]操作符的测试
print(str1[0:2],str1[3])
#4.in和not in的测试
print('M' in str1)
print('M' not in str1)
#5.r/R的测试
print('利用转义字符后 ',r'\"我被包围了\"','变成了','\"我被包围了\"')
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
MenAngel SunJiMeng
MenAngel MenAngel MenAngel
Me A
True
False
利用转义字符后 \"我被包围了\" 变成了 "我被包围了"
(6)格式字符串%:
Python支持格式化字符串的输出。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符%s 的字符串中。
在 Python 中,字符串格式化使用与C中 sprintf 函数一样的语法。
python字符串格式化符号:

格式字符串输出实例:
root@SJM:/home/sunjimeng/桌面# cat text.py
name='MenAngel'
sex='男'
age=19
print('我的个人信息是:name=%s,sex=%c,age=%d' %(name,sex,age)) #方法1
print("我的个人信息是:name=%(name)s,sex=%(sex)c,age=%(age)d" %{'name':'MenAngel','sex':'男','age':19}) #方法2
root@SJM:/home/sunjimeng/桌面# python3.5 text.py
我的个人信息是:name=MenAngel,sex=男,age=19
我的个人信息是:name=MenAngel,sex=男,age=19
格式化操作符辅助指令:

(7)三引号(triple quotes):
python中三引号可以将复杂的字符串进行复制:python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。
三引号的语法是一对连续的单引号或者双引号(通常都是成对的用)。
>>> tempStr='''你好啊
... MenAngel'''
>>> print(tempStr)
你好啊
MenAngel
>>> tempStr
'你好啊\nMenAngel'
三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。
一个典型的用例是,当你需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。
errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''
cursor.execute('''
CREATE TABLE users (
login VARCHAR(8),
uid INTEGER,
prid INTEGER)
''')
(8)Unicode字符串:
定义Unicode字符串是很简单的:
>>> temp=u'你好啊 MenAngel'
>>> print(temp)
你好啊 MenAngel
>>> u'Hello\u0020World !' #被替换的 \u0020 标识表示在给定位置插入编码值为 0x0020 的 Unicode 字符(空格符)。
'Hello World !'
引号前小写的"u"表示这里创建的是一个 Unicode 字符串。如果你想加入一个特殊字符,可以使用 Python 的 Unicode-Escape 编码。
Python学习进程(7)字符串的更多相关文章
- Python学习-第二天-字符串和常用数据结构
Python学习-第二天-字符串和常用数据结构 字符串的基本操作 def main(): str1 = 'hello, world!' # 通过len函数计算字符串的长度 print(len(str1 ...
- Python学习进程(8)字符串內建函数
Python字符串內建函数实现了string模块的大部分方法,并包括了对Unicode编码方式的支持. (1)capitalize(): 将字符串的第一个字母变成大写,其他字母变小写. ...
- Python学习进程
1周第1天 主要是变量的学习(11月8日) 1.1 python安装(win和linux下)1.2 ipython安装及使用1.3 变量的定义1.4 变量赋值1.5 运算符(赋值.算术.关系.逻辑)1 ...
- Python学习进程(13)文件与IO
本节介绍基本的IO函数和文件的读写操作. (1)读取键盘输入: Python用于读取键盘输入的函数有两个:raw_input与input. 1)raw_input函数 从标准输入读取一 ...
- Python学习进程(12)模块
模块让你能够有逻辑地组织你的Python代码段. (1)python模块: 模块化的好处: 1.把相关的代码分配到一个模块里能让你的代码更好用,更易懂. 2.模块也是Python对象, ...
- Python学习进程(3)Python基本数据类型
本节介绍在Python语法中不同的变量数据类型. (1)基本数据类型: >>> a=10; >>> b=10.0; >>> c=T ...
- Python学习2——使用字符串(完整版)
""" 在C语言入门的时候字符串没有好好学习,导致后期语言根本没有入门, 更导致之后大量的codeing时间浪费,效率低下. 因此,借助这次Python入门,好好地将字符 ...
- python学习笔记(字符串操作、字典操作、三级菜单实例)
字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...
- Python学习笔记3—字符串
原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...
随机推荐
- AFNet3.0上传图片
很多iOS应用都会遇到需要上传图片的情况,比如修改个人资料时需要上传自己的头像,最近我也遇到了这种情况,首先参考之前写过的AFNetWorking3.0处理请求头和请求内容. 我们在上述博客的基础之上 ...
- 分布式服务框架 Zookeeper(四)官方编程指南
握草,是不是加了官方两个字就可以唬人了. 使用ZooKeeper开发分布式应用 简介 这篇文档是为了那些想利用ZooKeeper的协调服务来构建分布式应用的开发人员而写滴,不相干的走一边去哈.在这儿有 ...
- openWRT自学---基于backfire版本,分析其Make命令的执行过程和各阶段的主要产物
准备阶段:从SVN下载backfire的编译环境(位置是:svn co svn://svn.openwrt.org/openwrt/branches/backfire),然后按照openWRT的要求, ...
- 结果集(ResultSet)用法
结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等. 结果集读取数据 ...
- Unity3D学习笔记——NGUI之UIToggle
UIToggle:切换,从名字就能知道这个组件能做什么.这个组件有两种状态ON/OFF.可以用于创建checkboxes, tabs, radio button groups. 效果展示: 一:使用步 ...
- VS+mysql+EF搭建
2016年7月6日更新: vs2010只需要安装mysql的.net connector就可以 vs2012, vs2015都需要安装.net connector + ODBC connector才行 ...
- java string 首字母大小写方法
String字符串需要进行首字母大小写改写,查询google,就是将首字母截取,转化大小写 + 首字母后面字符串 //首字母小写 public static String captureName(St ...
- GetWindowText 卡死的一种可能的原因
最近一个项目中碰到GetWindowText经常卡死的问题,这个项目有多个线程,检查代码发现发生死锁的是一个数据线程和一个UI线程. 示意图大致如下(data thread和UI thread在同一个 ...
- [Oracle] - Create DB on Oracle 12c for an Application
Let's say we are going to develop a application for a bank, or any other enterprise, this applicatio ...
- 图解Microsoft SQL Server——“远程过程调用失败 [0x800706be] 错误“。
今天在配置SqlServer启动参数时,发现"开始菜单"->“配置工具”->“SQL Server 配置管理器”中的“SQL Server 服务”一项,右边栏里显示的是 ...