目录:

题目一: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() 的用法和区别相关推荐

  1. python中rstrip 函数_Python中字符串之rstrip()方法有哪些功能?

    摘要: 下文讲述Python中rstrip()的方法的功能简介说明,如下所示: rstrip()方法功能: 用于删除字符串尾部指定的字符, 默认字符为所有空字符 如:空格.换行(\n).制表符(\t) ...

  2. python while if 区别_对python中for、if、while的区别与比较方法

    如下所示: if应用举例: #if 若条件成立,只执行一次 #if 条件:如果条件成立,执行条件后的代码块内容,不成立,直接跳过代码块 #判断如果年龄age小于18,输出未成年 #=一个等号表示赋值的 ...

  3. Python中threading的join和setDaemon的区别及用法 例子

    Python中threading的join和setDaemon的区别及用法 Python多线程编程时,经常会用到join()和setDaemon()方法,今天特地研究了一下两者的区别. 1.join ...

  4. python的none是什么-python中的null与none有什么区别

    Python中none与null的区别有:none可以看作是一个具体的值用来初始化变量,而null表示空不是一个值,并且没有与任何一个值绑定并且存储空间也没有存储值 Python中所有的操作都是针对对 ...

  5. Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho

    Python基础学习-Python中最常见括号().[].{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho ...

  6. python中_x、__x、__xx__的区别

    python中_x.__x.__xx__的区别 注释:该文章是从英文文档翻译过来的,具体代码可以参考原网址,这里只是简单解释一下他们的区别,方便大家迅速了解.原地址:difference-betwee ...

  7. Python中NaN、nan和NAN的区别及使用方法

    Python中NaN.nan和NAN的区别及使用方法 Python中的NaN(Not a Number)是一个特殊的浮点数值,用于表示非数值型计算结果或无限大的运算结果,常用于科学计算.数据分析等领域 ...

  8. Python学习笔记(一)1.Python中end=和sep=的用法与区别。

    一.Python中end=和sep=的用法与区别: python中常用到的end=和sep=两种参数用法相似,一个是python输出结尾,一个是python输出分割. end: 默认是换行,表示两个字 ...

  9. Python中最常见括号()、[]、{}的区别

    原文:https://www.cnblogs.com/xuxiaolu/p/4726064.html Python中最常见括号().[].{}的区别 在Python语言中最常见的括号有三种,分别是:小 ...

最新文章

  1. Objective-C入门
  2. 分区格式化/挂载数据盘
  3. visual studio如何给源码文件添加header信息?(创建者,创建日期等)(License Header Manager插件)
  4. 架构之:微服务架构漫谈
  5. 包含重复数字序列的全排列Python解法
  6. 《Head First设计模式》第九章(1)迭代器模式
  7. 设计模式学习(五):行为型模式
  8. [转载] 终于来了!TensorFlow 2.0入门指南(上篇)
  9. 统计用产品分类目录8位代码类别_沪市主板605代码“1号选手”来了
  10. Java开发工程师如何做好职业规划和成长路线
  11. 用C语言实现PID控制代码
  12. 人人商城小程序昵称变成了“微信用户”头像也不显示?getUserInfo换成getUserProfile
  13. 学报格式和论文格式一样吗_学报格式
  14. Studio 3T过期了的解决办法,亲测有效
  15. 俺博士三年的一点体会
  16. 玩游戏学编程,寓教于乐:12个学习编程的游戏化平台
  17. ROS 学习笔记3. launch文件的使用
  18. android sdk离线安装方法,Android 4.0 SDK的离线方式安装
  19. MeasureSpec源码解读
  20. 电源适配器的作用有哪些

热门文章

  1. ifstream java_ifstream :: seekg给出了错误的结果
  2. 【马红“名师+”研修共同体】师徒结对传帮带,青蓝同心共成长
  3. 到底什么是ISDN呢?
  4. vue-01-基本语法--指令
  5. SpringCloud - Oauth2增加短信验证码验证登录
  6. 酒店如何精细化管理海量固定资产和易耗品
  7. 【大数据专业】机器学习之模型调优的评估工具 验证曲线 学习曲线
  8. 虚幻4 OnlineSubsystem 平台相关的支付登陆等功能
  9. c++ 二维矩阵 转vector_C++ vector 实现二维数组
  10. Linux:命名管道