广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python里的17个“骚操作”好玩有趣
  • 384
分享到

Python里的17个“骚操作”好玩有趣

有趣好玩操作 2023-01-31 05:01:08 384人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

1. 交换变量有时候,当我们要交换两个变量的值时,一种常规的方法是创建一个临时变量,然后用它来进行交换。比如:# 输入a = 5b = 10#创建临时变量temp = aa = bb = tempprint(a)print(b)但在pyth

1. 交换变量

有时候,当我们要交换两个变量的值时,一种常规的方法是创建一个临时变量,然后用它来进行交换。比如:

# 输入

a = 5

b = 10

#创建临时变量

temp = a

a = b

b = temp

print(a)

print(b)

但在python中,其实我们有一种更简洁的写法:


列表和字符串Python中最常见的数据类型,它们会遇到互相转换的需要。那么,我们该怎么把list中的所有元素转为字符串呢?


给定一个包含多个元素的list,让你查找其中出现次数最多的元素,你会怎么做?在下图中,我们介绍了两种方法,其中第一种是利用max()函数的key参数,第二种则是使用Counter。


所谓anagram,就是两个词所用的字母及其个数都是一样的,但是它们字母的位置不一样,比如abc,bac,acb。在Python中,Counter可以解决这个问题,


字符串倒转,就是把1234转成4321。下面我们介绍了三种方法:

方法一:最简单的切片法,a[::-1]就相当于a[尾:头:-1]。

方法二:用Python自带reversed()函数,它可被用于list倒转。

方法三:第三种是通过倒转数据类型和切片倒转整数。


和字符串倒转类似,切片法也可以被用于list倒转,如下面的第一种方法。第二种方法调用的是上面提到的reversed()函数。


如果要转置矩阵,可以直接使用使用zip()函数。除此之外,没有比import numpy更简单的方法了。


如果想输出数组中介于4-7之间的元素,java是这么写的:if( b > 4 && b < 7){ },但Python更人性化。包括最后一句1 == b < 20,这和C、java也很不一样。


在python中实现链式调用只需在函数返回对象自己就行了。


如果是刚学习Python的C用户,你可能会想写b = a,但这是错的。在Python中,变量指向的是某个对象的标签。也就是说,按照这种的写法,b和a指向的是内存中的同一个列表,对b操作,就相当于对a操作。所以正确的写法有以下几种:

方法一:b=a[:]。

方法二:b=list(a)。

方法三:使用Python 3的copy()函数,直接复制list,类似a[:]。

方法四:使用copy.deepcopy()。


如果目标key不在字典中,以下代码会返回None或default。


Python的内置字典数据类型是无序的,而key可以被用来获取对应的value。有时我们需要根据value对字典中的item进行排序输出。方法如下所示:

方法一:用sorted函数排序,其中key参数是lamda表达式。

方法二:用operator.itemgetter而不是lamda表达式进行排序。

方法三:如果只需得到排序后的key,可用.get。



下面分别是字符串list、数字list和混合list的逗号分隔方式。


方法一:Python 3.5可以存在重复key值,print({**d1, **d2})。

方法二:在内存中创建两个列表,再创建第三个列表,拷贝完成后,创建新的dict,删除掉前三个列表。

方法三:d1.update()。



方法一:把list转成set,去除重复项,再转回list。

方法二:调用collections里的OrderedDict,和set差不多。


--结束END--

本文标题: Python里的17个“骚操作”好玩有趣

本文链接: https://www.lsjlt.com/news/188562.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python里的17个“骚操作”好玩有趣
    1. 交换变量有时候,当我们要交换两个变量的值时,一种常规的方法是创建一个临时变量,然后用它来进行交换。比如:# 输入a = 5b = 10#创建临时变量temp = aa = bb = tempprint(a)print(b)但在Pyth...
    99+
    2023-01-31
    有趣 好玩 操作
  • 几个好玩有趣的Python入门实例
    几个简单的Python实例,好玩有趣,基础语法。 turtle库开始自己的绘画 写一个属于自己的文本进度条 蒙特卡洛方法计算π 分形几何,Koch雪花曲线 输入一组数据,进行简单的统计 小说词频统计,统计三国演义中谁出场率最高 ...
    99+
    2023-01-31
    几个 实例 入门
  • 13个有趣又好玩的Python游戏代码分享
    目录1、吃金币2、打乒乓3、滑雪4、并夕夕版飞机大战5、打地鼠6、小恐龙7、消消乐8、俄罗斯方块9、贪吃蛇10、24点小游戏11、平衡木12、外星人入侵13、井字棋888经常听到有朋...
    99+
    2022-11-13
  • chatgpt赋能python:10个好玩的Python代码-让编程更有趣!
    10个好玩的Python代码- 让编程更有趣! 作为一名有10年Python编程经验的工程师,我深刻理解到编程可以是一件令人兴奋和有趣的事情。Python是流行且多才多艺的编程语言,具有简洁易懂的语法...
    99+
    2023-08-31
    chatgpt python 开发语言 计算机
  • Python里的17个超赞操作分别是什么
    今天就跟大家聊聊有关Python里的17个超赞操作分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。人生苦短,我选Python”。那么,你真的掌握了Python吗? 交换变量有...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作