Python学习笔记(九)——字符串
# 5.1 字符串的拼接
str1 = '我今天一共走了'
num = 1280
str2 = '步'
print(str1+str(num)+str2)
# 计算字符串长度
print(len(str1))
# 5.2 字符串截取
str3 = 'abcdefgh'
substr1 = str3[2]
substr2 = str3[1:3]
substr3 = str3[:3]
substr3 = str3[1:]
print(substr1+'\n'+substr2+'\n'+substr3)
# 5.3 分割字符串
str4 = '小 菜 鸡 要 加 油'
list4 = str4.split(' ')
print('原字符串:' + str4)
print('分割字符串:' + str(list4))
# 5.4 合并字符串
list5 = ['马云','扎克伯格','马化腾']
str_friend = ' @'.join(list5)
strnew = '@'+str_friend
print('你要@的好友:',strnew)
# 5.5 检索字符串
str6_1 = '@小菜鸡 @小菜鸟'
print(str6_1.count('@')) #指定字符串在另一个字符串出现的次数
print(str6_1.find('@')) #返回子字符串首次出现位置,若不存在返回-1
print(str6_1.index('@')) #与find类似,若子字符串不存在则会抛出异常
print(str6_1.startswith('@')) #是否以子字符串开头
print(str6_1.endswith('@')) #是否以子字符串结尾
# 5.6 字母大小写转换
str7 = 'abCdEfG'
print(str7.upper()) #将小写字母转化为大写字母
print(str7.lower()) #将大写字母转化为小写字母
# 例题:不分大小写验证会员名是否唯一
username_1 = '|MingRi|mingrisoft|Bat|'
username_2 = username_1.lower()
regname_1 = input('请输入要注册的名字')
regname_2 = '|'+regname_1+'|'
if regname_2 in username_2:
print(regname_1,'已经被注册,请重新注册')
else:
print(regname_1+',恭喜您,注册成功')
# 5.7 去除空格和特殊字符
str8_1 = ' @小菜鸡 @小菜鸟 '
print(str8_1.strip('@')) #srtip中可以设置多个字符,若不设置字符,默认去除左右的空格、制表符和回车、换行
print(str8_1.strip()) #去除左右的空格和特殊字符
print(str8_1.lstrip()) #去除左侧空格和特殊字符
print(str8_1.rstrip()) #去除右侧空格和特殊字符
# 5.8 格式化字符串
#使用%占位符
template = '编号:%09d 公司名称: %s 官网: http://www.%s.com'
context1 = (7,'百度','baidu')
context2 = (8,'微软','mingrisoft')
print(template%context1)
print(template%context2)
#使用format()方法
# str.format(args)
# {[index][:[[fill]align][sign][#][width][.precision][type]]}
# index 表示设置格式对象在参数列表中的索引位置
# fill 指定空白处的填充字符
# align 指定对齐方式 >表示右对齐;<表示左对齐;=表示内容右对齐,符号放在左侧且只对数字类型有效;^表示内容居中,配合width使用
# sign 指定有无符号数
# #对于二进制、八进制、十六进制会显示前缀
# width 指定所占宽度
# .precision 指定保留小数位数
# type指定类型
template = '编号:{:0>9} 公司名称:{:s} 官网: http://www.{:s}.com'
context3 = template.format(7,'百度','baidu')
context4 = template.format(8,'微软','mingrisoft')
print(context3,'context3')
print(context4,'context4')
# 5.9 字符串编码转换
#encode()编码 将字符串转化为二进制
#str.encode([encoding = "utf-8"][,errors = "strict"])
verse = "小菜鸡要加油"
verse_change = verse.encode('GBK') #可选参数为gb2312(简体中文),默认utf-8
print('原字符:',verse)
print('转换字符:',verse_change)
#decode()解码
#bytes.decode([encoding="utf-8"][,errors="strict"])
print("解码:",verse_change.decode("gb2312"))
Python学习笔记(九)——字符串的更多相关文章
- Python学习笔记九
Python学习笔记之九 为什么要有操作系统 管理硬件,提供接口. 管理调度进程,并且将多个进程对硬件的竞争变得有序. 操作系统发展史 第一代计算机:真空管和穿孔卡片 没有操作系统,所有的程序设计直接 ...
- python学习笔记(字符串操作、字典操作、三级菜单实例)
字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...
- Python学习笔记3—字符串
原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...
- 【Python学习笔记】字符串操作
字符串的表示 python中的字符串是一个常量,可以使用单引号'',双引号""或三引号""" """来创建一个字符串常量 ...
- python学习笔记(九)、模块
1 模块 使用import 语句从外部导入模块信息,python提供了很大内置模块.当你导入模块时,你会发现其所在目录中,除源代码文件外,还新建了一个名为__pycache__的子目录(在较旧的Pyt ...
- Python学习笔记(3)-字符串
创建字符串 一对单引号或双引号 >>> 'hello world' 'hello world' >>> "hello world" 'hello ...
- python学习笔记九——序列
4.4 序列 序列是具有索引和切片能力的集合.元组.列表和字符串具有通过索引访问某个具体的值,或通过切片返回一段切片的能力,因此元组.列表和字符串都属于序列.序列索引功能演示: tuple=(&quo ...
- Python学习笔记九:装饰器,生成器,迭代器
装饰器 本质是函数,装饰其他函数,为其他函数添加附加功能 原则: 1不修改原函数的源代码 2不修改原函数的调用方式 知识储备: 1函数即变量 使用门牌号的例子说明函数,调用方式与变量一致 2高阶函数 ...
- Python学习笔记:字符串
字符串 字符串定义:字符串可以使用一对单引号.双引号或三引号来定义,即便是单个字符也会当做字符串来处理(Python中没有字符类型,单个字符也就是只有一个字符的字符串而已). 原始字符串:字符串中反斜 ...
- python学习笔记(一)---字符串与列表
字符串的一些处理 字符串的大小写 name="lonmar hb" print(name.upper())#全大写 print(name.lower())#全小写 print(na ...
随机推荐
- 三、hibernate中持久化类的使用
hibernate的持久化类 持久化:将内存中的一个对象持久化到数据库中的过程,hibernate就是一个用来进行持久化的框架 持久化类:一个Java对象与数据库中表建立了关系映射,那么这个类在hib ...
- VMware虚拟机提示找不到vmnetbridge.dl文件的解决办法
把vmware workstation删了重装,估计是异地安装包在安装时候出现的问题. 先把安装包拷贝到本地,然后控制面板上把已有的vmware workstation删除. 最后重新安装VMware ...
- dubbo-源码阅读之容器启动
dubbo Main 例子 public class Start { public static void main(String[] args) throws Exception { com.ali ...
- jq enter键发送
$('.content').keypress(function(e) { if(e.keyCode === 13) { //调用接口 return false; } }) .
- 在CMake中启用VS2017的C++17特性
VS2017的C++17特性默认并未开启,需要在编译参数中手动开启.找到项目的CMakeLists.txt,在查找编译器的代码后面加入如下内容即可. ") include(CheckCXXC ...
- 【IP】虚拟IP原理
使用场景: 当这台机器出现故障时,自动动态切换到另一台热备的机器 高可用性HA(High Availability) 指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间 ...
- Repeatable Read
在Repeatable Read隔离级别下,一个事务可能会遇到幻读(Phantom Read)的问题. 幻读是指,在一个事务中,第一次查询某条记录,发现没有,但是,当试图更新这条不存在的记录时,竟然能 ...
- NX二次开发-BlockUI的Tree树控件
关于BlockUI的Tree树控件只要研究UGOPEN里西门子官方的那个例子在结合去查NXOPEN的帮助基本就可以了.[不过我是看唐工的视频学会的,没办法自己领悟性不太强] //=========== ...
- 学习android文档 -- Adding the Action Bar
1. Setting Up the Action Bar:users-sdk version 11以上可以使用holo主题:如果不使用holo主题,或者sdk版本较低,则需要在manifest文件的& ...
- NAT和路由器 基本概念
NAT(Network Address Translation, 网络地址转换)是1994年提出的.当在专用网内部的一些主机本来已经分配到了本地IP地址(即 仅在本专用网内使用的专用地址),但现在又想 ...