如何快速学会的漂亮短代码

1.数组再分组对一个列表根据所需要的大小进行细分:
效果如下:
examples
chunk([1,2,3,4,5],2)# [[1,2],[3,4],5]
return中,map的第二个参数是一个列表,map会将列表中的每一个元素用于调用第一个参数的 function 函数,返回包含每次 function 函数返回值的新列表。
2.数字转数组同样是一则关于map的应用,将整形数字拆分到数组中:
def digitize(n):
return list(map(int, str(n)))
效果如下:
examples
digitize(123)# [1, 2, 3]
它将整形数字n转化为字符串后,还自动对该字符串进行了序列化分割,最后将元素应用到map的第一个参数中,转化为整形后返回。
3.非递归斐波那契还记得菲波那切数列吗,前两个数的和为第三个数的值,如0、1、1、2、3、5、8、13....
如果使用递归来实现这个算法,效率非常低下,我们使用非递归的方式实现:
效果如下:
examples
fibonacci(7)# [0, 1, 1, 2, 3, 5, 8, 13]
这样看是很简单,但是思维要绕的过来哦。
4.下划线化字符串批量统一变量名称或者字符串格式。
效果如下:
examples
snake('camelcase')# 'camel_case'
snake('some text')# 'some_text'
snake('some-mixed_string with spaces_underscores-and-hyphens')# 'some_mixed_string_with_spaces_underscores_and_hyphens'
snake('allthe-small things')# all_the_small_things
re.sub用于替换字符串中的匹配项。这里其实是一个“套娃”用法,一开始可能不太好理解,需要慢慢理解。
第一个替换 ,是将s字符串中,使用' '替换'-'。
第二个替换 ,是针对第一个替换后的字符串,对符合'([a-z]+)'正则表达式的字符区段(全大写的单词)用r' 1'替换,也就是用空格区分开每一个单词。
第三个替换 ,是对第二个替换后的字符串,对符合'([a-z][a-z]+)'正则表达式的字符区段(也就是首字母大写,其他字母小写的词语)用r' 1'替换,也是将单词用空格分隔开。

Intel开发人工智能芯片,是要打算进军新市场?
【昉·星光 2(VisionFive 2)RISC-V单板计算机】板上愉快的GDB调试
智能音箱市场巨头纷争 用户习惯培养是关键
洗衣机节水省电妙招大全
华为推出业界最大容量高可靠集群路由器系统NetEngine 5000E
如何快速学会的漂亮短代码
未来将呈现出万务智联改变世界的6G网络时代
基于安森美半导体物联网构建模块设计
产学研一体化 联想来酷携手新华教育助推新基建人才培养
基于USB转UART技术和无线技术实现无线通讯终端系统的设计
CNPV 与德国公司 AE Photonics 签订长期战略
中国如果禁止比特币会发生什么
关于促进集成电路产业高质量发展企业所得税政策的公告
锤式破碎机轴承位磨损原因及修复方案
基于ARM9芯片S3C2410实现测量监控系统的应用方案
嵌入式Modem在配变终端单元中的应用
Nuggets与物信链合作,用区块链技术为物联网提供安全身份验证
5G行业将迎来布局窗口,物联网和云游戏应用端前景可观
华为聚焦6大通用终端能力,形成“3+6+X”的5G应用体系2.0版本
镭神智能完成数亿元D轮融资,进一步加大激光雷达技术研发