【Python实践-6】将不规范的英文名字,变为首字母大写,其他小写的规范名字...

1 #利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。
2 def f1(s):
3     s=s.capitalize()
4     return s
5 list1= ['adam', 'LISA', 'barT']
6 r=list(map(f1,list1))
7 print(r)

知识点:

1、函数,面向过程的程序设计的基本单元。何为面向过程?通过一层一层的函数调用,把复杂任务分解成简单的任务。

2、函数式编程,一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数我们称之为没有副作用。函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数。由于函数内部的变量状态不确定,同样的输入,可能得到不同的输出,因此,这种函数是有副作用的。Python对函数式编程提供部分支持。由于Python允许使用变量,因此,Python不是纯函数式编程语言。

3、高阶函数,变量可以指向函数,可以通过该变量来定义函数。>>>f=abs >>>f(-10) 10;函数名其实就是指向函数的变量。所以既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。

4、Python内建了map()函数map()函数接收两个参数,一个是函数,一个是Iterablemap将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。map()传入的第一个参数是f1,即函数对象本身。由于结果r是一个IteratorIterator惰性序列,因此通过list()函数让它把整个序列都计算出来并返回一个list。

5、可迭代对象,可以直接作用于for循环的对象统称为可迭代对象Iterable,一类是集合数据类型,如listtupledictsetstr等;一类是generator,包括生成器和带yield的generator function。生成器都是Iterator对象,但listdictstr虽然是Iterable,却不是Iterator(迭代器。因为Python的Iterator对象表示的是一个数据流,Iterator对象可以被next()函数调用并不断返回下一个数据,直到没有数据时抛出StopIteration错误。可以把这个数据流看做是一个有序序列,但我们却不能提前知道序列的长度,只能不断通过next()函数实现按需计算下一个数据,所以Iterator的计算是惰性的,只有在需要返回下一个数据时它才会计算。

6、Python capitalize()将字符串的第一个字母变成大写,其他字母变小写。语法:str.capitalize()。参数:无。返回一个首字母大写的字符串。注意首字符如果是非字母,首字母不会转换成大写,会转换成小写。

 

转载于:https://www.cnblogs.com/jianglin1996/p/10779820.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值