python字符串及其方法详解
引号的作用:
python可以用单引号或者双引号表示字符串,用引号来区分数字和字符串
"1024"和1024和"1'02'4":
1,加引号的1024是字符串str,可使用str相关的操作;不加引号的1024表示整数或浮点数,可进行整数或浮点数的运算。
2,int(str)会把字符串强制转换成整数(如果str中有字母或者其它字符,会报错),str(int)会强制转换成字符串
3,单引号和双引号没有区别,都是表示字符串,如果在字符串中表示引号,可以用不同的引号区别,也可以用转义\'
三引号表示多行字符串,python中用\多行表示一行字符串:
"Welcome! This is the documentation for Python 3.5.0, \
last updated Sep 13, 2015. "
'''
Welcome! This is the documentation for Python 3.5.0,
last updated Sep 13, 2015.
'''
python数据类型
python有两种数据类型:字符串和非字符串
非字符串:整数int,浮点数float,复数complex-----在python2.x有长整型long
浮点数的科学计数法
13000000可表示1.3*10^7---1.3E7,0.00000013可表示1.3*10^-7----1.3E-7
字符串又有两种类型:
字符串str和字节bytes
字节
bytes:将普通的字符串转换成字节,如果遇到汉字需要编码成字节
>>> bytes("hello world,你好",encoding="utf-8")
b'hello world,\xe4\xbd\xa0\xe5\xa5\xbd'
>>> "hello world,你好".encode()
b'hello world,\xe4\xbd\xa0\xe5\xa5\xbd'
str:可以将字节解码成汉字
>>> str(b"hello world,\xe4\xbd\xa0\xe5\xa5\xbd",encoding="utf-8")
'hello world,你好'
>>> b"hello world,\xe4\xbd\xa0\xe5\xa5\xbd".decode()
'hello world,你好'
关于编码的内容在python官方文档的The python standard library -> binary data services -> Encodings and Unicode
字符串
首先来一段字符串的基本操作
str1="my little pony"
str2="friendship is magic"
str3=str1+","+str2 #字符串普通的加法==>
str1+=","+str2 #通过这句话可得出==> +=的优先级大于+
print("str3=%s\nstr2=%s"%(str3,str1)) 得出:
---my little pony,friendship is magic #我的小马驹,友谊是魔法
字符串切割:
print(str2[0])
print(str2[5])
print(str2[2:7])
print(str2[2:])
print(str2[:7])
print(str2[:])
字符串也能像切割列表那样,python中基本遇到start:end:step这种,start要算进去,end不用算进去。顾头不顾尾
字符串的常用方法:
,合并,查找,插入,替换,取字符串长度,分割等。。。
取字符串长度
print(len(str1))
upper(),lower()
str3=str1.upper()
print(str3)
---MY LITTLE PONY,FRIENDSHIP IS MAGIC
str1=str3.lower()
print(str1)
---my little pony,friendship is magic
capilalize(),swapcase(),casefold()
str3=str1.capitalize()
print(str3) #头一个字母大写,其他字母都小写
---My little pony,friendship is magic
str1=str3.swapcase()
print(str1) #大写改成小写,小写改成大写
---mY LITTLE PONY,FRIENDSHIP IS MAGIC
str3=str1.casefold()
print(str3) #头一个字母小写,其他全是小写
---my little pony,friendship is magic
字符串的分割和合并
分割:split() 对象:字符串 参数一:分隔符 参数二:分割几次(默认全部分割) 返回类型:列表
合并:join() 对象:分割符 参数一:列表元祖等
#为了美观我想把,转换成空格
str1=str1.replace(',',' ')
#str1以空格为分隔符
li1=str1.split(" ")
print(li1)
---['my', 'little', 'pony', 'friendship', 'is', 'magic']
#恢复成之前的状态
str3=' '.join(li1)
print(str3)
---my little pony friendship is magic
分割二:partition() 对象:字符串 参数一:中间的字符串 返回类型:元祖
#以pony为分割点,分割成三段
str3=str1.partition("pony")
print(str3)
#---('my little ', 'pony', ',friendship is magic')
分割三(多行分割):splitline() 参数一:是否打印换行符 返回类型:列表
str1='''my little pony
friendship is magic
rainbow pony through time
'''
li1=str1.splitlines()
#---['my little pony', 'friendship is magic', 'rainbow pony through time']
查找字符串,返回字符串开始的下标
一:index() 对象:母字符串 参数一:子字符串 参数二:查找开始的位置 参数三:查找结束的位置
二:find() 对象:母字符串 参数一:子字符串 参数二:查找开始的位置 参数三:查找结束的位置
#index的用法和局限
print(str1.index("pony")) #默认从第零个开始找
---10
print(str1.index("pony",11)) #从第11个开始找
---43
print(str1.index("pony",44,50)) #从第44个开始找到第50个,没有就会出错
#find的用法
print(str1.find("pony"))
10
print(str1.find("pony",11))
43
print(str1.find("pony",44,50)) #-1表示找不到,不会报错
-1
替换:replace() 对象:字符串 参数一:旧的子字符串 参数二:新的子字符串 参数三:替换几次(默认所有)
字符居中显示:center() 对象:字符串 参数一:指定字符串加符号一共多少个字符 参数二:剩余的地方填充符号
print("kira".center(15,'★'))
★★★★★★kira★★★★★
字符编码:encode()
判断字符串:
开头:startswith() 对象:字符串 参数一:开头的字符串 参数二:开始位置 参数三:结束位置 返回值:布尔
结尾:endswith() 对象:字符串 参数一:结尾的字符串 参数二:开始位置 参数三:结束位置 返回值:布尔
计数子字符串出现的次数:count() 对象:字符串 参数一:子字符串 参数二:开始位置 参数三:结束位置 返回值:整数
python字符串及其方法详解的更多相关文章
- Python数据类型及其方法详解
Python数据类型及其方法详解 我们在学习编程语言的时候,都会遇到数据类型,这种看着很基础也不显眼的东西,却是很重要,本文介绍了python的数据类型,并就每种数据类型的方法作出了详细的描述,可供知 ...
- Python内置方法详解
1. 字符串内置方法详解 为何要有字符串?相对于元组.列表等,对于唯一类型的定义,字符串具有最简单的形式. 字符串往往以变量接收,变量名. 可以查看所有的字符串的内置方法,如: 1> count ...
- 15.python文件(file)方法详解
文件的基本操作 文件读写: 文件的读写满足以下3个步骤: 1).打开文件 2).操作数据(读.写) 3).关闭文件 --> 不要忘记 1).打开文件: python的open() 方法用于打开一 ...
- python 文件读取方法详解
话不多说直接码 # 绝对路径 # f = open('/Users/fangxiang/Downloads/我的古诗.text', mode='r', encoding='utf-8') # cont ...
- Python的魔术方法详解
构造和初始化 __init__我们很熟悉了,它在对象初始化的时候调用,我们一般将它理解为"构造函数". 实际上, 当我们调用x = SomeClass()的时候调用,__init_ ...
- 4.Python IDLE使用方法详解(包含常用快捷键)
在安装 Python 后,会自动安装一个 IDLE,它是一个 Python Shell (可以在打开的 IDLE 窗口的标题栏上看到),程序开发人员可以利用 Python Shell 与 Python ...
- python os模块方法详解
os.access() 方法使用当前的uid/gid尝试访问路径.大部分操作使用有效的 uid/gid, 因此运行环境可以在 suid/sgid 环境尝试. 实例: os.chdir() 方法用于改变 ...
- Python List insert()方法详解
1.功能insert()函数用于将指定对象插入列表的指定位置. 2.语法list.insert(index, obj) 3.参数index: 对象obj需要插入的索引位置.obj: 插入列表中的对象. ...
- Python - 字符串常用函数详解
str.index(sub, start=None, end=None) 作用:查看sub是否在字符串中,在的话返回索引,且只返回第一次匹配到的索引:若找不到则报错:可以指定统计的范围,[start, ...
随机推荐
- openssl 升级
openssl version -a rpm -q --changelog openssl | grep CVE bash -version #!/bin/bash if [[ $EUID -ne ...
- Json格式应用
Json格式在用于数据存储方面比xml有着空间上的优势,Json格式又主要分为两种格式:名称/值 对 和数组. 在我的业务环境中需要先把一种空间比较小的格式. 测试如下: 取数据库中的一张表然后生成两 ...
- 红外遥控NEC协议使用总结
最近做了一个调试红外遥控三色灯的实习,花了一个多月的时间研究基于NEC协议的红外遥控,下面是这次实习技术方面的总结. 一.NEC协议特征: 8位地址和8位命令长度 每次传输两遍地址(用户码)和命令(按 ...
- HTML meta 头部的一些内容
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable= ...
- eclipse使用技巧之 //TODO标识
通常有三种方式去表示你的待办: //TODO 待实现 //XXX 勉强可以工作,但是性能差 //FIXME 代码错误,必须修复. 在task窗口可以查找所有TODO. 使用ctrl + K 去单页面定 ...
- PHP手机,邮箱正则匹配
/*此处用于验证手机*/ $phone_preg = '/^1[3|4|5|7|8]\d{9}$/'; $email_preg = '/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+) ...
- 为没有源码的DLL文件添加强名称
为没有源码的DLL文件添加强名称 如果项目中引用了其他没有源码的dll文件,并且此dll文件是没有强名称的程序集,则编译时会出现类似 "Assembly generation failed ...
- cf Canada cup A题
A. Jumping Ball time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Python 之 threading
创建多线程常用的三种方法: 创建Thread的实例,传给它一个函数 创建Thread的实例,传给它一个可调用的类实例(不推荐) 派生Thread的子类,并创建子类的实例(推荐) 创建Thread的实例 ...
- nyoj 881 小M的区间公约数
点击打开链接 首先给的范围很大,是10^9.暴力解肯定超时(单用for循环到10^9都大约要2s-3s),首先写了个程序暴力的把两个数所有的约数都打印出来,最后发现所有的公约数都是最大公约数的约数,并 ...