Python中 rstrip()、 lstrip()、 strip() 的用法和区别
目录:
题目一:Python中 rstrip()、 lstrip()、 strip() 的用法和区别
题目二:python中append()、expend()函数的用法和区别
题目三:Python中zip()、zip(*zipped)、*zip()函数的用法和区别
题目一:Python中 rstrip()、 lstrip()、 strip() 的用法和区别
考点
这三个函数都是去除头尾字符、空白符的函数
strip: 用来去除头尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
lstrip:用来去除开头字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
答案
输入数据时,很有可能会输入多余的空格,或者在一些场景中,字符串前后不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符。这三个方法只是返回字符串前面或后面空白被删除之后的副本,并不会改变字符串本身。
从字面可以看出r=right,l=left,strip可以表示出字符串格式化的方法,参数是可选的,当参数为空,默认删除string的空白符(包括\n、\r、\t、' ')。但是无论那种方法只能删除开头或是结尾的字符,不能删除中间部分的字符。下面是方法实例:
str1 = " I love you three thousand times!!! "
str2 = str1.lstrip() # 默认是空格
print(str2) #
str3 = str1.rstrip() # 默认是空格
print(str3) #
str4 = str1.strip() # 默认是空格
print(str4) #
str5 = str4.strip("!") # 删除“!”
print(str5) #
输出结果:
I love you three thousand times!!! I love you three thousand times!!!
I love you three thousand times!!!
I love you three thousand times
为了更进一步了解它的用法,下面看一看这个实例:
str1 = " I love you three thousand times!!! "
str6 = str1.strip().strip("!stI").strip()
print(str6) #love you three thousand time
首先遍历chars中的字符,调用strip() 去除字符中前后的空格变为I love you three thousand times!!!,接着依次去掉字符中的“!”和“s”,因为这时字符中的首尾没有“t”,所以去不掉,再然后调用strip() 在依次去掉“I”和空格,最终输出love you three thousand time。
题目二:python中append()、expend()、insert()函数的用法和区别
考点
a.append(b):是将b原封不动追加到a末尾上,会改变a的值,其中,b可为列表、元组、字符串。
a.extend(b):是将b拆开后追加到a的末尾上,会改变a的值,其中,b可为列表、元组、字符串。
L.insert(index,obj):将指定对象插入到列表中的指定位置。index对象obj需要插入的索引值。obj 是要插入列表中的对象。
答案
这三个方法只是修改列表,没有返回值,所以不能用于赋值,在恰当的位置对原来的列表进行修改,这意味着,该方法不是返回一个修改过的列表,而是直接修改原来的列表。
a.append(b)会把对象整体添加到列表后,添加的时候会把添加的数据当成一个整体进行添加,允许添加任意类型的数据。a.extend(b)会把对象迭代添加到列表后,添加的时候会把添加的数据迭代进行添加,只允许添加可迭代对象数据。
s1_list =["I ","love"," you"]
s2_list = ["three ","thousand ","times"]
s1_list.append(s2_list)
print(s1_list)#['I ', 'love', ' you', ['three ', 'thousand ', 'times']]
s1_list.pop(3)#删除单个或多个元素,根据索引删除.注意:pop删除时会返回被删除的元素
s1_list.extend(s2_list)
print(s1_list)#['I ', 'love', ' you', 'three ', 'thousand ', 'times']
s1_list.insert(6, 'XH')#按索引位插入
print (s1_list)#['I ', 'love', ' you', 'three ', 'thousand ', 'times', 'XH']
题目三:Python中zip()、zip(*zipped)、*zip()函数的用法和区别
考点
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
zip(*zipped)中的 *zipped参数,可以list数组,也可以是zip()函数返回的对象。
*zip()函数是zip()函数的逆过程,将zip对象变成原先组合前的数据。
答案
在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换;如需展示字典,需手动 dict() 转换。当zip()函数中只有一个参数时,zip(iterable)从迭代器中依次取一个元组,组成一个元组。当zip()函数有两个参数时,zip(a,b)函数分别从a和b中取一个元素组成元组,再次将组成的元组组合成一个新的迭代器。a与b的维数相同时,正常组合对应位置的元素。当a与b行或列数不同时,取两者中的最小的行列数。
# 定义三个列表
a = [1, 2, 3]
b = [4, 5, 6]
nums = [['a1', 'a2', 'a3'], ['b1', 'b2', 'b3']]# 打包为元组的列表,而且元素个数与最短的列表一致
a_b = zip(a, b)
print(list(a_b))# 输出a_biters = zip(*nums)
print(dict(iters))print("*zip(m, n)返回:", *zip(a, b))
m, n = zip(*zip(a, b))
print("m和n的值分别为:", m, n)
输出结果 :
[(1, 4), (2, 5), (3, 6)]
{'a1': 'b1', 'a2': 'b2', 'a3': 'b3'}
*zip(m, n)返回: (1, 4) (2, 5) (3, 6)
m和n的值分别为: (1, 2, 3) (4, 5, 6)
写在最后
CSDN话题挑战赛第1期
- 活动详情地址:CSDN
Python中 rstrip()、 lstrip()、 strip() 的用法和区别相关推荐
- python中rstrip 函数_Python中字符串之rstrip()方法有哪些功能?
摘要: 下文讲述Python中rstrip()的方法的功能简介说明,如下所示: rstrip()方法功能: 用于删除字符串尾部指定的字符, 默认字符为所有空字符 如:空格.换行(\n).制表符(\t) ...
- python while if 区别_对python中for、if、while的区别与比较方法
如下所示: if应用举例: #if 若条件成立,只执行一次 #if 条件:如果条件成立,执行条件后的代码块内容,不成立,直接跳过代码块 #判断如果年龄age小于18,输出未成年 #=一个等号表示赋值的 ...
- Python中threading的join和setDaemon的区别及用法 例子
Python中threading的join和setDaemon的区别及用法 Python多线程编程时,经常会用到join()和setDaemon()方法,今天特地研究了一下两者的区别. 1.join ...
- python的none是什么-python中的null与none有什么区别
Python中none与null的区别有:none可以看作是一个具体的值用来初始化变量,而null表示空不是一个值,并且没有与任何一个值绑定并且存储空间也没有存储值 Python中所有的操作都是针对对 ...
- Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho
Python基础学习-Python中最常见括号().[].{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho ...
- python中_x、__x、__xx__的区别
python中_x.__x.__xx__的区别 注释:该文章是从英文文档翻译过来的,具体代码可以参考原网址,这里只是简单解释一下他们的区别,方便大家迅速了解.原地址:difference-betwee ...
- Python中NaN、nan和NAN的区别及使用方法
Python中NaN.nan和NAN的区别及使用方法 Python中的NaN(Not a Number)是一个特殊的浮点数值,用于表示非数值型计算结果或无限大的运算结果,常用于科学计算.数据分析等领域 ...
- Python学习笔记(一)1.Python中end=和sep=的用法与区别。
一.Python中end=和sep=的用法与区别: python中常用到的end=和sep=两种参数用法相似,一个是python输出结尾,一个是python输出分割. end: 默认是换行,表示两个字 ...
- Python中最常见括号()、[]、{}的区别
原文:https://www.cnblogs.com/xuxiaolu/p/4726064.html Python中最常见括号().[].{}的区别 在Python语言中最常见的括号有三种,分别是:小 ...
最新文章
- Objective-C入门
- 分区格式化/挂载数据盘
- visual studio如何给源码文件添加header信息?(创建者,创建日期等)(License Header Manager插件)
- 架构之:微服务架构漫谈
- 包含重复数字序列的全排列Python解法
- 《Head First设计模式》第九章(1)迭代器模式
- 设计模式学习(五):行为型模式
- [转载] 终于来了!TensorFlow 2.0入门指南(上篇)
- 统计用产品分类目录8位代码类别_沪市主板605代码“1号选手”来了
- Java开发工程师如何做好职业规划和成长路线
- 用C语言实现PID控制代码
- 人人商城小程序昵称变成了“微信用户”头像也不显示?getUserInfo换成getUserProfile
- 学报格式和论文格式一样吗_学报格式
- Studio 3T过期了的解决办法,亲测有效
- 俺博士三年的一点体会
- 玩游戏学编程,寓教于乐:12个学习编程的游戏化平台
- ROS 学习笔记3. launch文件的使用
- android sdk离线安装方法,Android 4.0 SDK的离线方式安装
- MeasureSpec源码解读
- 电源适配器的作用有哪些
热门文章
- ifstream java_ifstream :: seekg给出了错误的结果
- 【马红“名师+”研修共同体】师徒结对传帮带,青蓝同心共成长
- 到底什么是ISDN呢?
- vue-01-基本语法--指令
- SpringCloud - Oauth2增加短信验证码验证登录
- 酒店如何精细化管理海量固定资产和易耗品
- 【大数据专业】机器学习之模型调优的评估工具 验证曲线 学习曲线
- 虚幻4 OnlineSubsystem 平台相关的支付登陆等功能
- c++ 二维矩阵 转vector_C++ vector 实现二维数组
- Linux:命名管道