一、python字符串处理

目录:

1.算长度(len),某个元素出现的次数(count)

2.切片   [ ],repr:把不可见字符显示出来

3.查找 #find,rfind从右边查找

4.字符串和列表之间的转换(split,join list)

5.替换字符串replace   #替换会生成新的字符串,原来的字符串不变

6.类型转换

7.编码函数

二、python字符串格式化

目录:

1.填充(center、ljust,rjust,zfill)

2.设定间距,对齐方式  end="" #不换行,sep

3.字符串格式化(%,format)

一、python字符串处理

以ping百度得到的返回数据为例:

 myString='''正在 Ping www.a.shifen.com [220.181.112.244] 具有 32 字节的数据:
来自 220.181.112.244 的回复: 字节=32 时间=27ms TTL=54
来自 220.181.112.244 的回复: 字节=32 时间=36ms TTL=54
来自 220.181.112.244 的回复: 字节=32 时间=42ms TTL=54
来自 220.181.112.244 的回复: 字节=32 时间=36ms TTL=54 220.181.112.244 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 27ms,最长 = 42ms,平均 = 35ms''' #算长度以及行数
print(myString)
print("长度为:",len(myString))
c=myString.count("\n")+(not myString.endswith("\n"))
#求行数方法二
#c=myString.count("\n")+[1,0][myString.endswith("\n")]
print("行数为:",c)
#查找、切片
print("******************查找、切片**********************")
print("220.181.112.244第一个IP开始的位置:",myString.find(""))
start1=myString.find("")
print("220.181.112.244IP结束的位置:",myString.find("]",start1))
end1=myString.find("]",start1)
print("IP地址是:",myString[start1:end1])
print("第一个TTL开始的位置:",myString.find("TTL"))
start2=myString.find("TTL")
print("第一个TTL结束的位置:",myString.find("\n",start2))
end2=myString.find("\n",start2)
print("TTL的值为:",myString[start2:end2].split("=")[1])

运行效果如下:

4.字符串和列表之间的转换

字符串转换为列表split、list

列表转换为字符串join

1 
承接上部分代码!!!!
#和列表之间的转换
print("******************和列表之间的转换**********************")
print("以换行符为分割转换为列表:")
list1=myString.split("\n")
print(list1)
print("把列表拼接为字符串:")
string2='\n'.join(list1)
print("拼接之后的字符串为:",string2)
print(list(""))

运行效果如下:

5.替换字符串replace   #替换会生成新的字符串,原来的字符串不变

1 
承接上部分代码!!!

print("*****************替换字符串***********************")
 print("把myString字符串中ip地址全都替换为8.8.8.8:")
print(myString.replace("220.181.112.244","8.8.8.8"))
print("把myString字符串中第一个ip地址替换为8.8.8.8:")
print(myString.replace(myString[start1:end1],"8.8.8.8",1))
print("替换会生成新的字符串,原始字符没有改变:")
print(myString)

运行效果如下:

6.类型转换

代码如下:

 #类型转化
a=123
b=(1,2,3)
c=[1,2,3]
d={1,2,1,3}
e={"":99,"":88}
f=''
g="87.2"
a1=str(a)
b1=str(b)
c1=str(d)
d1=str(e)
print(a1,type(a1),b1,type(b1),c1,type(c1),d1,type(d1))
print(str(a)+f)
print(int(f)+1)
print(float(g)+1)

运行效果如下:

#判断是否可以转换为整型
a="1,2,3"
print(a.isdecimal())
print(a.isdigit())
print("九".isnumeric())

7.编码函数

ord:把字符串转换为ASCII    bin:把字符串转换成二进制

oct:把字符串转换成八进制    hex:把字符串转换成16进制

二、python字符串格式化

1.填充(center、ljust,rjust,zfill)

 print("居中填充".center(14,"-"))
print("左填充".ljust(15,"-"))
print("右填充".rjust(15,"-"))
print("零填充".zfill(15))

2.设定间距,对齐方式

print(1,2,3,sep="   ")

print(1,2,3,sep="\t")

3.字符串格式化

school="河河"
address="河南"
age=60
print("%-10s%-10s%-5d"%(school,address,age))
#format的用法
print("{:10s}{:10s}{:5d}".format(school,address,age))

python字符串处理以及字符串格式化的更多相关文章

  1. Python基础(十五):Python的3种字符串格式化,做个超全对比!

    有时候,为了更方便.灵活的运用字符串.在Python中,正好有3种方式,支持格式化字符串的输出 . 3种字符串格式化工具的简单介绍 python2.5版本之前,我们使用的是老式字符串格式化输出%s. ...

  2. Python基础学习_01字符串的拼接(字符串的格式化输出)

    # 字符串的拼接 ---字符串的格式化输出 # 字符串的拼接 ---字符串的格式化输出 name = input("name:") age = input("age:&q ...

  3. Python 基础之字符串操作,函数及格式化format

    一.字符串的相关操作 1.字符串的拼接 + strvar1 = "我爱你,"strvar2 = "亲爱的姑凉"res = strvar1 + strvar2pr ...

  4. .Net程序员之Python基础教程学习----字符串的使用 [Second Day]

         在The FirstDay 里面学习了列表的元组的使用,今天开始学习字符串的使用.字符串的使用主要要掌握,字符串的格式化(C语言中我们应该都知道,Python和C语言差别不大),字符串的基本 ...

  5. Python内置的字符串处理函数整理

    Python内置的字符串处理函数整理 作者: 字体:[增加 减小] 类型:转载 时间:2013-01-29我要评论 Python内置的字符串处理函数整理,收集常用的Python 内置的各种字符串处理 ...

  6. 【循序渐进学Python】3. Python中的序列——字符串

    字符串是零个或多个的字符所组成的序列,字符串是Python内建的6种序列之一,在Python中字符串是不可变的. 1. 格式化字符串 字符串格式化使用字符串格式化操作符即百分号%来实现.在%左侧放置一 ...

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

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

  8. Python教程(2.4)——字符串

    2.2节讲过,Python中有字符串类型.在Python中,字符串用'或"括起,例如'abc'."qwerty"等都是字符串.注意'和"并不是字符串的内容. A ...

  9. Python基础:数据类型-字符串(7)

    1.字符串基本操作 字符串是由字符组成的一串字符序列,字符串是有顺序的,从左到右,索引从0开始,依次递增. Python中字符串类型:str. Python中字符串的三种表示方式: (1)普通字符串: ...

  10. python数据类型一:字符串

    Python 字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello W ...

随机推荐

  1. Spring中Bean的生命周期及其扩展点

    原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6106456.html Spring中Bean的管理是其最基本的功能,根据下面的图来了解Spr ...

  2. Go基础系列:import导包和初始化阶段

    import导入包 搜索路径 import用于导入包: import ( "fmt" "net/http" "mypkg" ) 编译器会根据 ...

  3. Go基础系列:struct的导出和暴露问题

    struct的导出和暴露问题 关于struct的导出 struct的属性是否被导出,也遵循大小写的原则:首字母大写的被导出,首字母小写的不被导出. 所以: 如果struct名称首字母是小写的,这个st ...

  4. zend studio快捷键

    某些快捷键会失效,多尝试就好.快捷键就是一种减轻工作量的方式,或者说展示码农码代码的熟练度,重要的还在于对一个问题的看法和角度,说的具体些就是算法和数据结构,不看会后悔,不学设计模式也会吃亏. 应用场 ...

  5. SQL Server2008附加数据库出现错误

    在用SQL Server 2008附加数据库时,出现了如下错误: 解决方法如下: 一. 检查对数据库文件及其所在文件夹是否有操作权限,右键文件属性,将权限修改为完全控制: 二. 权限改了之后,发现还是 ...

  6. 【微服务No.4】 API网关组件Ocelot+Consul

    介绍: Ocelot是一个.NET API网关.该项目针对的是使用.NET运行微服务/面向服务架构的人员,他们需要一个统一的入口进入他们的系统.然而,它可以处理任何说HTTP并在ASP.NET Cor ...

  7. mybatis_11关联查询_多对多

    一对一:模型里面有模型 一对多:模型里面有集合 多对多:集合里面有集合   映射思路 pojo类设计思路 v  将用户信息映射到user中. v  在user类中添加订单列表属性List<Ord ...

  8. MyBatis:事务回滚

    事务的隔离级别:DEFAULT.READ_UNCOMMITED.READ_COMMITTED.REPEATABLE_READ.SERIALIZABLE 事务的传播行为:REQUIRED.SUPPORT ...

  9. Integer Partition(hdu4658)2013 Multi-University Training Contest 6 整数拆分二

    Integer Partition Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...

  10. C#设计模式之十九策略模式(Stragety Pattern)【行为型】

    一.引言 今天我们开始讲“行为型”设计模式的第七个模式,该模式是[策略模式],英文名称是:Stragety Pattern.在现实生活中,策略模式的例子也非常常见,例如,在一个公司中,会有各种工作人员 ...