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实现二分图的最大匹配
1 问题描述 何为二分图的最大匹配问题? 引用自百度百科: 首先得说明一下何为匹配: 给定一个二分图G,在G的一个子图M中,M的边集{E}中的任意两条边都不依附于同一个顶点,则称M是一个匹配. 极大匹 ...
- tensorflow2.0学习笔记第二章第一节
2.1预备知识 # 条件判断tf.where(条件语句,真返回A,假返回B) import tensorflow as tf a = tf.constant([1,2,3,1,1]) b = tf.c ...
- 小师妹学JavaIO之:文件系统和WatchService
目录 简介 监控的痛点 WatchService和文件系统 WatchSerice的使用和实现本质 总结 简介 小师妹这次遇到了监控文件变化的问题,F师兄给小师妹介绍了JDK7 nio中引入的Watc ...
- 我们为什么要用hibernate
1.hibernate对JDBC访问数据库的代码做了一个封装,简化了数据访问繁琐的代码. 2.hibernate的性能非常好,因为它是个轻量级框架.映射的灵活性很好,它支持各种关系型数据库,从一对一到 ...
- 用于实现tab页签切换页面的angular路由复用策略
使用场景 打开菜单页面的时候,出现对应页面的页签.切换页签,原来的页面信息状态保留,关闭页签则保留的信息删除.使用路由复用策略,保存路由快照.实现效果如图所示 实现过程 概述: 1.在app.modu ...
- pytorch入门2.2构建回归模型初体验(开始训练)
pytorch入门2.x构建回归模型系列: pytorch入门2.0构建回归模型初体验(数据生成) pytorch入门2.1构建回归模型初体验(模型构建) pytorch入门2.2构建回归模型初体验( ...
- PAT 1039 Course List for Student (25分) 使用map<string, vector<int>>
题目 Zhejiang University has 40000 students and provides 2500 courses. Now given the student name list ...
- protected关键字对父子成员变量的影响
include<iostream> #include<string> using namespace std; class parent{ protected: int mv; ...
- Mysql:bit类型的查询与插入
原文链接:https://www.cnblogs.com/cuizhf/archive/2013/05/17/3083988.html Mysql关于bit类型的用法: 官方的资料如下: 9.1.5. ...
- 深入理解 nth-child 和 nth-of-type 的区别
ele:nth-of-type(n) 为什么叫 of-type ,就是说它是以“type”来区分的,也就是说ele:nth-of-type(n)指的是父元素下第n个ele元素. ele:nth-ch ...