Python3笔记022 - 5.1 字符串常用操作
第5章 字符串及正则表达式
5.1 字符串常用操作
5.1.1 拼接字符串
使用+运算符可完成多个字符串的拼接,产生一个新的字符串对象。
str1 = "2020年07月06日是"
str2 = "星期一"
print(str1+ "-" + str2)
字符串不允许直接与其他类型的数据拼接,非字符串须转换为字符串。
# 字符串拼接的例子
str1 = "2020年07月06日是7月第"
str2 = "天"
num1 = 6
print(str1 + str(num1) + str2)
5.1.2 计算字符串的长度
python默认UTF-8编码,一个汉字占3个字节,一个字母占1个字节,一个数字占一个字节。
len(string.encode())
str1 = "2020"
str2 = "星期三"
str3 = "Wednesday"
print(len(str1.encode()))
print(len(str2.encode()))
print(len(str3.encode()))
5.1.3 截取字符串
string[start : end : step]
# 去掉星期两字
str1 = "星期一星期二星期三星期四星期五星期六星期日"
print(str1[2:len(str1):3])
5.1.4 分割、合并字符串
1、分割
str.split(sep, maxsplit)
参数说明
sep:分隔符,默认为所有的空字符。
maxsplit:分割次数.默认为 -1, 即分隔所有。
str1 = "Google#Runoob#Taobao#Facebook"
# 第二个参数为2,分割2次,返回两个参数列表
strnew = str1.split("#", 2)
print(strnew)
输出:['Google', 'Runoob', 'Taobao', 'Facebook']
str1 = "星期一#星期二#星期三#星期四#Sunday"
# 第二个参数为2,分割2次,返回两个参数列表
strnew = str1.split("#", 20)
print(strnew)
输出:['星期一', '星期二', '星期三', '星期四', 'Sunday']
2、合并字符串
strnew = string.join(iterable)
参数说明
string:指定的字符
iterable:可迭代的一个序列
string = '-'
iterable = 'python'
strnew = string.join(iterable)
print(strnew)
输出:p-y-t-h-o-n
5.1.5 检索字符串
1、count()方法
list1 = ["Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday"]
print(list1.count("Tuesday"))
output:
1
2、find()方法
str1 = "星期一星期二星期三星期四星期五星期六星期日"
print(str1.find("星期六"))
output:
15
# 如果查找的字符串不存在,将输出-1
str1 = "星期一星期二星期三星期四星期五星期六星期日"
print(str1.index("星期八"))
output:
-1
3、index()方法
str1 = "星期一星期二星期三星期四星期五星期六星期日"
print(str1.index("星期六"))
output:
15
# 如果查找的字符串不存在,将会产生异常
str1 = "星期一星期二星期三星期四星期五星期六星期日"
print(str1.index("星期八"))
output:
ValueError: substring not found
4、startswith()方法
str.startswith(prefix[, start[, end]])
str1 = "#星期一星期二星期三星期四星期五星期六星期日"
print(str1.startswith("#"))
output:
True
5、endswith()方法
str.endswith(suffix[, start[, end]])
str1 = "#星期一星期二星期三星期四星期五星期六星期日"
print(str1.endswith("日"))
output:
True
5.1.6 字母的大小写转换
1、lower()方法
str.lower()
str1 = "Monday"
print(str1.lower())
输出:monday
2、upper()方法
str.upper()
str1 = "Monday"
print(str1.upper())
输出:MONDAY
5.1.7 去除字符串中的空格和特殊字符
1、strip()方法
strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
str.strip([chars])
chars:移除字符串头尾指定的字符序列
str1 = " M o n da y "
print(str1.strip())
output:M o n da y
2、lstrip()方法
lstrip() 方法用于截掉字符串左边的空格或指定字符
str.lstrip([chars])
str1 = " M o n da y "
print(str1.lstrip())
M o n da y
3、rstrip()方法
rstrip() 删除 string 字符串末尾的指定字符(默认为空格)
str.rstrip([chars])
str1 = " M o n da y "
print(str1.rstrip())
output: M o n da y
5.1.8 格式化字符串
1、使用%操作符---放弃使用
'%[-][+][0][m][.n]格式化字符'%exp
2、使用字符串对象的format()方法---建议使用
str.format(args)
str:用于指定字符串的显示样式(即模板)
args:用于指定要转换的项,如果有多项,逗号分隔
创建模板
{[index][:[[fill]align][sign][#][width][.precision][type]]}
format()方法中常用的格式化
格式化字符 | 说明 |
---|---|
s | 对字符串类型 |
d | 十 |
c | 将十进制整数自动转换成对应的Unicode字符 |
e或者 | 转换为科学计数法表示再 |
g或者 | 自动在e和f或者EF中切换 |
b | 将十进制整数自动转换成二进制表示再 |
o | 将十进制整数自动转换成八进制表示再格式化 |
x或者 | 将十进制整数自动转换成十六进制表示再格式化 |
f或者 | 转换为浮点数再格式化 |
% | 显示 |
template = '今天的日期是{:s},星期{:s}'
date = template.format('20200706','一')
print(date)
output:
今天的日期是2020706,星期一
5.1.9 字符串转字节
# python3添加了bytes字节类型
s = "apple"
print(bytes(s,encoding='utf-8'))
output:
b'apple'
Python3笔记022 - 5.1 字符串常用操作的更多相关文章
- Python学习笔记五:字符串常用操作,字典,三级菜单实例
字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...
- Python 基礎 - 字符串常用操作
字符串常用操作 今天就介紹一下常用的字符串操作,都是以 Python3撰寫的 首字母變大寫 #!/usr/bin/env python3 # -*- coding:utf-8 -*- name = & ...
- javascript中字符串常用操作整理
javascript中字符串常用操作整理 字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用 ...
- 初识python: 字符串常用操作
直接上代码示例: #!/user/bin env python # author:Simple-Sir # time:20180914 # 字符串常用操作 name = 'lzh lyh' print ...
- python笔记2-数据类型:字符串常用操作
这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...
- python3字符串常用操作练习
练习一下字符串的常用操作 #-*- coding:utf-8 -*- #字符串的常用操作 str = "1111 Hell :wo:rld! " #删除头尾所有指定字符串,默认移除 ...
- JavaScript 字符串常用操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- javascript中字符串常用操作总结、JS字符串操作大全
字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...
- JavaScript 字符串常用操作纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
随机推荐
- Java实现 蓝桥杯 历届试题 错误票据
问题描述 某涉密单位下发了某种票据,并要在年终全部收回. 每张票据有唯一的ID号.全年所有票据的ID号是连续的,但ID的开始数码是随机选定的. 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成 ...
- java实现第六届蓝桥杯密文搜索
密文搜索 福尔摩斯从X星收到一份资料,全部是小写字母组成. 他的助手提供了另一份资料:许多长度为8的密码列表. 福尔摩斯发现,这些密码是被打乱后隐藏在先前那份资料中的. 请你编写一个程序,从第一份资料 ...
- FPGA之SPI SD卡读操作
这几天在FPGA调试与SD通信,读SD卡里的图片,之前接触32时没有去研究过SD卡,不太熟悉操作流程,在网上找了很多资料,也看了几个32开发板的资料,但大多数都讲得不是特别清楚,只能瞎操作了一番,在别 ...
- 小程序 大转盘 抽奖 canvas animation
项目需求运用到大转盘 可设置概率 可直接自定义结果 效果如下
- Node第三方模块
node第三方模块集合 1.nrm 切换npm下载的镜像地址 nrm ls 查看可用镜像 nrm use +镜像名 2.nodemon 在控制台nodenom替代node命令执行nodejs文件, ...
- 小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下
目录 简介 虚拟地址空间 详解MappedByteBuffer MapMode MappedByteBuffer的最大值 MappedByteBuffer的使用 MappedByteBuffer要注意 ...
- Asp.Net Core入门之自定义服务注册
谈到服务注册,首先我们先了解一下服务注册时使用的三种方式,也代表了不同的服务生命周期: AddTransient AddScoped AddSingleton AddSingleton生命周期最长,其 ...
- [转] C++中的namespace
点击阅读原文 namespace中文意思是命名空间或者叫名字空间,传统的C++只有一个全局的namespace,但是由于现在的程序的规模越来越大,程序的分工越来越细,全局作用域变得越来越拥挤,每个人都 ...
- LR字符串处理函数-lr_save_string
int lr_save_string( const char *param_value, const char *param_name) 指定字符串保存至参数 Action() { lr_save_s ...
- root和sudo
root用户是系统中唯一的超级管理员,它具有等同于操作系统的权限.一些需要root权限的应用,譬如广告阻挡,是需要root权限的.可问题在于root比windows的系统管理员的能力更大,足以把整个系 ...