山东省曲阜市学年第二学期
得分一、填一填。(22分)
如果你现在正在Python学习阶段,那这篇文章将会帮助你了解到python中可用的各种实用技巧,养成优雅的Python编写风格。
1、交互环境下的"_"操作符
在 Python 控制台,不论何时我们测试一个表达式或者调用一个方法,结果都会分配给一个临时变量: _(一个下划线)。
“_” 是上一个执行的表达式的输出;
2、运行时检测Python版本
当正在运行的 Python 低于支持的版本时,有时我们也许不想运行我们的程序。
为达到这个目标,可以使用下面的代码片段,它也以可读的方式输出当前 Python 版本:
我们可以通过调用 dir() 方法来检查 Python 中的对象,示例:
会列出对象的属性方法。
我们可以在 模块的帮助下在 Python 脚本中设置断点。如下下示例:
我们可以使用下面的方式来验证多个值:
可以在程序中结合使用两个或多个条件运算符,我们可以使用逻辑运算符。但是,通过链接运算符可以获得相同的结果。
例如,如果我们需要在变量的值大于10且小于20时打印某些内容,则代码将类似于以下:
取而代之的是,我们可以将条件运算符组合为单个表达式。
7、使用 splat 运算符解包函数参数
splat 运算符提供了一种解压参数列表的艺术方式
8、使用三元操作符来进行条件赋值
三元操作符是 if-else 语句也就是条件操作符的一个快捷方式:
[表达式为真的返回值] if [表达式] else [表达式为假的返回值]
这里给出几个你可以用来使代码紧凑简洁的例子。
下面的语句是说“如果 y 是 9,给 x 赋值 10,不然赋值为 20”。如果需要的话我们也可以延长这条操作链。
同样地,我们可以对类做这种操作:
在上面的例子里 classA 与 classB 是两个类,其中一个类的构造函数会被调用。
下面是另一个多个条件表达式链接起来用以计算最小值的例子:
我们甚至可以在列表推导中使用三元运算符:
比较运算符的聚合是另一个有时可以派上用场的技巧
如果你想拼接列表中的所有记号,比如下面的例子:
11、切割字符串至列表
可以将字符串拆分为字符串列表。在下例中,根据空格切割;
12、从字符串列表中创建一个字符串
与上一个技巧正好相反,在此例中,从字符串列表中创建一个字符串,并在单词间输入空格:
归根结底,String.join()函数不仅可以连接列表,还可以连接任何可迭代的列表,将它放在String中会阻止在多个位置实现相同的功能。
戳下方进群可下载Python数据结构语法学习资料↓↓
用于反转字符串的概念称为字符串切片,可以在变量名称后使用符号[::-1]反转任何字符串。
交换是彼此交换两个变量的值的过程,这在计算机科学的许多操作中可能很有用。
此方法使用临时变量存储一些数据,以下代码使用临时变量名编写。
方法II-不使用临时变量
以下代码在不使用临时变量的情况下交换了变量;
这是使用python交换变量的另一种方法,我们可以使用交换的概念。
使用集合库中的Counter来获取包含列表中所有唯一元素计数的字典:
16、找到列表中出现最频繁的数
17、不使用循环构造一个列表
Lambda是python中的匿名函数,可在一行中创建函数。这里给出了使用lambda函数的语法。
语法:lambda参数:表达式
此处了解更多有关高级函数的基础运用,学习资源可下方进群领取↓↓
该函数可以用python中的lambda函数替换。创建以下程序以创建数字列表的平方。
20、从函数返回多个值
python函数可以返回多个值,而无需任何额外的代码:
Python 限制递归次数到 1000,我们可以重置这个值:
列表生成式是从另一个列表创建列表的一种非常紧凑的方法。
第一个是使用简单的迭代编写的,第二个是使用列表生成式的。
23、四种翻转字符串/列表的方式
在一个循环中翻转并迭代输出
24、使用字典来存储选择操作
我们能构造一个字典来存储表达式:
25、在Python中合并两个字典
在python中,我们可以合并两个字典,而无需任何复杂的方法。
26、字典/集合推导式
与我们使用的列表推导相似,我们也可以使用字典/集合推导,它们使用起来简单且有效;
下面的代码使用一个字典来模拟构造一个switch-case;
过滤器功能用于过滤可迭代对象中的某些值。过滤功能的语法如下。
语法:filter(函数,迭代)
Python 允许运行一个 HTTP 服务器来从根路径共享文件,下面是开启服务器的命令:(python3环境)
上面的命令会在默认端口也就是 8000 开启一个服务器,你可以将一个自定义的端口号以最后一个参数的方式传递到上面的命令中。
python-dateutil模块提供了对标准datetime模块的强大扩展。 通过以下方式安装:
只需记住:常规的Python日期时间功能不奏效时,python-dateutil就派上用场了!