本节介绍字符串的创建与操作方法。

    (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)字符串的更多相关文章

  1. Python学习-第二天-字符串和常用数据结构

    Python学习-第二天-字符串和常用数据结构 字符串的基本操作 def main(): str1 = 'hello, world!' # 通过len函数计算字符串的长度 print(len(str1 ...

  2. Python学习进程(8)字符串內建函数

        Python字符串內建函数实现了string模块的大部分方法,并包括了对Unicode编码方式的支持.     (1)capitalize(): 将字符串的第一个字母变成大写,其他字母变小写. ...

  3. Python学习进程

    1周第1天 主要是变量的学习(11月8日) 1.1 python安装(win和linux下)1.2 ipython安装及使用1.3 变量的定义1.4 变量赋值1.5 运算符(赋值.算术.关系.逻辑)1 ...

  4. Python学习进程(13)文件与IO

        本节介绍基本的IO函数和文件的读写操作.     (1)读取键盘输入: Python用于读取键盘输入的函数有两个:raw_input与input. 1)raw_input函数 从标准输入读取一 ...

  5. Python学习进程(12)模块

        模块让你能够有逻辑地组织你的Python代码段.     (1)python模块: 模块化的好处: 1.把相关的代码分配到一个模块里能让你的代码更好用,更易懂. 2.模块也是Python对象, ...

  6. Python学习进程(3)Python基本数据类型

        本节介绍在Python语法中不同的变量数据类型.     (1)基本数据类型: >>> a=10; >>> b=10.0; >>> c=T ...

  7. Python学习2——使用字符串(完整版)

    """ 在C语言入门的时候字符串没有好好学习,导致后期语言根本没有入门, 更导致之后大量的codeing时间浪费,效率低下. 因此,借助这次Python入门,好好地将字符 ...

  8. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  9. Python学习笔记3—字符串

    原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...

随机推荐

  1. 我的第三个java程序 两数相加

    import java.util.Scanner; public class Test { public static void main(String [] args) { Scanner sc = ...

  2. linux oracle 配置监听器

    参考:http://database.51cto.com/art/201010/231338.htm 服务端: 1.增加一个listener:终端运行: $ORACLE_HOME/bin/netca ...

  3. SlidingMenu官方实例分析6——ResponsiveUIActivity

    ResponsiveUIActivity 这个类实现的是一个响应适UI设计重点是布局的设计: layout布局如下: layout-large-land布局如下: layout-xlarge布局如下: ...

  4. windows共享文件夹给centOS

    服务器使用的是CentOS系统,而本机使用的win7系统.考虑到是临时使用,所以就不打算搭建FTP和Samba服务器,直接通过CentOS挂载windows共享文件夹的方式来达到此目的. 既然是使用w ...

  5. Laravel中创建控制器

    <?php /** * Created by PhpStorm. * User: chuang * Date: 17-1-14 * Time: 下午4:29 */ namespace App\H ...

  6. 头一次玩博客,记录下我的java之路吧

    今天写了简单的后台管理系统,发现光靠脑子记住知识真的很难,笔记本不好翻,之前写的代码更难找,所以写写博客,记录一些知识,为了以后上班用得到.

  7. Jmeter BeanShell 引用变量报错jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Parse error at line 14, column 181 : Error or number too big for integer

    如果你通过CSV Data Set Config或者_StringFromFile函数来参数化你的请求,需要特别注意当参数为纯数字时,jmeter会默认将其识别成int型数据,说明jmeter并不是默 ...

  8. Collection Set List 集合二

    Set List 都继承Collection Collection:元素之间没有顺序,允许重复和多个null元素对象. Set:元素之间没有顺序,不允许重复只能存一个null. List:元素之间有顺 ...

  9. codevs2894、2837、1669、2503、3231

    6.25动态规划之背包回顾 2894 Txx考试  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description Txx是一个 ...

  10. #1589 : 回文子串的数量(Manacher)

    #1589 : 回文子串的数量 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个字符串S,请统计S的所有|S| * (|S| + 1) / 2个子串中(首尾位置不 ...