| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> JZ2 替换空格 -> 正文阅读 |
|
[Python知识库]JZ2 替换空格 |
新知识: 一、map()函数 ?二、lambda匿名函数 python允许用lambda关键字创造匿名函数。匿名是不需要以标准的方式来声明,比如说使用 def 语句。 不同之处: lambda可以定义一个匿名函数,而def定义的函数必须有一个名字。这应该是lambda与def两者最大的区别。lambda是一个表达式,而不是一个语句(lambda is an expression, not a statement.)因此,lambda能够出现在Python语法不允许def出现的地方;例如,在一个列表常量中或者函数调用的参数中。lambda的主体是一个单个的表达式,而不是一个代码块。(lambda's body is a single expression, not a block of statements.),lambda里面的语句相当于def中return中的代码一样。只能是简单的表达式,所以说lambda的能力小于def,在lambda中只能使用简单的语法,不能使用if else while return等语句它的设计理念为:lambda是一个为编写简单的函数而设计的,而def用来处理更大的任务。(lambda is designed for coding simple functions, and def handles larger tasks.) 三、字符串是不可变对象 出现了报错:TypeError: 'str' object does not support item assignment 原因是:在python中,字符串是不可变对象,不能通过下标的方式直接赋值修改。同样的不可变对象还有:数字、字符串和元组。 这里这样写是不对的。对字符串的修改可以用加和的方式进行,如下图: ?那么如果想替换字符串中的某个字母的话替换为‘%20’,应该怎么做呢?见“五”。 四、join()函数 Python中有.join()和os.path.join()两个函数,具体作用如下: ? ?. join():??? 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 属于list转str >>#对序列进行操作(分别使用'? ' 、' - '与':'作为分隔符) ?>> a=['1','2','3','4','5'] >> '? '.join(a) 1 2 3 4 5 >>';'.jion(a) 1-2-3-4-5 >>'.'.join(a) 1.2.3.4.5 >>#对字符串进行操作(分别使用'? ' 、' - '与':'作为分隔符) >>b='hello world' >> '? '.join(b) h e l l o? ?w o r l d >>'-' .join(b) h-e-l-l-o- -w-o-r-l-d >>':'.jion(b) h:e:l:l:o: :w:o:r:l:d >>#对元组进行操作(分别使用'? ' 、' - '与':'作为分隔符) >>c=('1','2','3','4','5') >>'? '.join(c) 1 2 3 4 5 >>'-'.join(c) 1-2-3-4-5 >>':'.join(c) 1:2:3:4:5 >>#对字典进行无序操作(分别使用'? ' 、' - '与':'作为分隔符) >>d={'name1':'a','name2':'b','name3':'c','name4':'d'} >>'? '.jion(d) name1 name2 name3 name4 >>'-'.join(d) >>':'.join(d) name1:name2:name3:name4 >>#对目录进行操作 >> import os >>os.path.join('/hello/','good/date','datbody') hello/good/date/datbody ?五、想对一串字符中的某个字母进行替换,需要先将字符串改变类型。 需要把str字符串类型转变成list列表类型,就是需要list函数。 即: 用name = list(name) 。然后就可以: for i in range(len(name)): if name[i] == 'i': name[i] = 'p' 了。 但是最后输出的时候记得再把它变为字符串类型。否则就会输出列表类型,比如: print(name): 需要改成 print("".join(name)):? ? 六、关于for i in range(5)如果for内部有对i有赋值的话,下次循环i是按赋的值+1还是不受赋值影响? ? 输出为01134 也就是说,在出现for i in range 5这句话的时候,已经为i生成了一个列表为01234。每次将这个列表中的下一位输入进该函数。这个列表里i 的值不受其他赋值的影响。而如果是按赋的值继续累加的话输出则应该是01123. 七、为什么不能用replace方法? Python replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。 ?八、python的print函数比较自由 ? 注:\t表示tab? print中的参数都会打印出来,默认是相隔一个空格。 ? ?在非引号里加空格是没有用的,打印出来和上面的一样。 ?
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/26 0:57:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |