# 9个应知应会的单行Python代码

## 1. If — Else 语句

if-else 语句是我们在 Python 中学习的第一批语句之一，它用于执行给定条件的真假部分。

age = 18valid = "You're an adult"invalid = "You're NOT an adult"print(valid) if age >= 18 else print(invalid)


### 2. 根据现有列表创建新列表

[En]

Lists are a common way to store data, but did you know that it only takes one line of code to create a new list based on an existing list?

[En]

Yes, it’s called list derivation, and it provides a short syntax for creating lists based on the values of existing lists, which are more compact than the functions and loops used to make lists.

[expression for item in list]


words = ['united states', 'brazil', 'united kingdom']capitalized = [word.title() for word in words]>>> capitalized['United States', 'Brazil', 'United Kingdom']


[En]

The above code does look better! Keep in mind, however, that we should keep the code user-friendly, so it is not recommended to write long list deductions in a single line of code.

### 3. 字典推导

{key: value for key, value in iterable}


dict_numbers = {x:x*x for x in range(1,6) }>>> dict_numbers{1: 1, 2: 4, 3: 9, 4: 16, 5:25}


### 4. 合并词典

dict_1 = {'a': 1, 'b': 2}dict_2 = {'c': 3, 'd': 4}merged_dict = {**dict_1, **dict_2}>>> merged_dict{'a': 1, 'b': 2, 'c': 3, 'd': 4}


### 5.删除列表中的重复项

&#x200B;set&#x200B;​是一种无序集合，其中每个元素都是唯一的。这意味着如果我们将列表变成一个集合，就可以快速删除重复项，。然后我们只需要将集合再次转换为列表即可。

[En]

Let’s look at a basic example to master it.

numbers = [1,1,1,2,2,3,4,5,6,7,7,8,9,9,9]>>> list(set(numbers))[1, 2, 3, 4, 5, 6, 7, 8, 9]


### 6. 在一行中给多个变量赋值

a, b, c = 1, "abc",  True>>> a1>>> b'abc'>>> cTrue


[En]

It’s very concise, but it’s important to note that the more variables we assign, the greater the chance of assigning them to the wrong value.

### 7. 从列表中过滤值

filter(function, iterable)


[En]

Let’s master it by filtering even numbers from the list

my_list = [10, 11, 12, 13, 14, 15]>>> list(filter(lambda x: x%2 == 0, my_list ))[10, 12, 14]


### 8. 按键排序字典

[En]

In the following example, we will sort the dictionary by product name.

product_prices = {'Z': 9.99, 'Y': 9.99, 'X': 9.99}>>{key:product_prices[key] for key in sorted(product_prices.keys())}{'X': 9.99, 'Y': 9.99, 'Z': 9.99}


### 9. 按值排序字典

sorted(iterable, key=None, reverse=False)


[En]

Suppose we have a dictionary containing population values, and we want to sort them by value.

population = {'USA':329.5, 'Brazil': 212.6, 'UK': 67.2}>>> sorted(population.items(), key=lambda x:x[1])[('UK', 67.2), ('Brazil', 212.6), ('USA', 329.5)]


[En]

Now the only thing left is to add dictionary derivation.

population = {'USA':329.5, 'Brazil': 212.6, 'UK': 67.2}>>> {k:v for k, v in sorted(population.items(), key=lambda x:x[1])}{'UK': 67.2, 'Brazil': 212.6, 'USA': 329.5}


[En]

All right, that’s all we shared today. If you like it, please give it a compliment.

Original: https://blog.51cto.com/u_10487107/5558928
Author: 周萝卜123
Title: 9个应知应会的单行Python代码

(0)

### 大家都在看

• #### Anaconda安装及环境配置+更换下载源+Pytorch安装配置过程详解（基于python3.9）

Anaconda安装及环境配置+更换下载源+Pytorch安装配置过程详解（基于python3.9） 一、前言 二、Anaconda更改默认下载源 三、安装配置pytorch 四、…

Python 2023年8月1日
0143
• #### Audio基本概念及处理流程

1、声音的三要素:频率、振幅、波形 1.1、频率： 声波的频率，即声音的音调， 音调越高，频率越大；音调越低，频率越小。 人类听觉的频率（音调）范围为 20Hz–20K…

Python 2023年11月6日
0119
• #### 随机数模块

随机数模块 与Python的random模块相比， NumPy的random模块功能更多，它增加了一些可以高效生成多种概率分布的样本值的函数1.例如 import numpy as…

Python 2023年8月29日
0125
• #### 大数据关键技术：常规机器学习方法

机器学习方法简介 机器学习研究和构建的是一种特殊算法（而非某一个特定的算法），能够让计算机自己在数据中学习从而进行预测。 Arthur Samuel给出的定义指出，机器学习是这样的…

Python 2023年10月15日
0124
• #### Django学习之路(一)–初识django

为什么要创建虚拟环境呢? 你有两个项目同时进行,一个需要pytnon3.9和Django3.x版本的，一个需要python3.7和Django2.x版本的,不进行环境隔离的话，运行…

Python 2023年8月6日
0156
• #### Python自学笔记11-函数的定义和调用

函数是组织代码的一种非常有效的方式，有了函数，我们就可以编写大型项目。可以说，函数是组织代码的最小单位。 [En] Functions are a very effective w…

Python 2023年5月23日
0238
• #### 支付宝扫“福”字活动马上开始，看我如何使用python制作一个“福”字吧

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

Python 2023年11月7日
089
• #### 接口自动化框架之python pytest-mark（三）

一、mark标签介绍 在测试用例/测试类前面加上： @pytest.mark.&#x6807;&#x7B7E;&#x540D;&#xFF0C;打标记…

Python 2023年9月12日
098
• #### pycharm使用matplotlib绘图学习笔记

#encoding=utf-8 import numpy as np def main(): import matplotlib.pyplot as plt ##lesson1:画…

Python 2023年9月5日
076
• #### Django搭配Editor.md上传图片问题解决方案

啊哦~你想找的内容离你而去了哦 内容不存在，可能为如下原因导致： ① 内容还在审核中 ② 内容以前存在，但是由于不符合新 的规定而被删除 ③ 内容地址错误 ④ 作者删除了内容。 可…

Python 2023年8月5日
0115
• #### 【Django | 安全防护】CSRF跨站伪请求和SQL注入攻击

🤵‍♂️ 个人主页: @计算机魔术师👨‍💻 作者简介：CSDN内容合伙人，全栈领域优质创作者。 🌐 推荐一款找工作神器网站: 牛客网🎉🎉|笔试题库|面试经验|实习招聘内推还没账户的…

Python 2023年8月2日
0113
• #### 关于anaconda navigator打不开问题的解决

Python 2023年8月1日
0123
• #### YOLOv5如何进行区域目标检测（手把手教学）

YOLOv5如何进行区域目标检测（手把手教学） &#x63D0;&#x793A;&#xFF1A;&#x672C;&#x9879;&#…

Python 2023年8月1日
0116
• #### 程序员核心——详解调试（2）

所爱隔山海，山海皆可平，所念皆星河，星河不可及。 上课！ 接着上节课讲的调试（1），本节课进一步讲解调试(2). 文章目录 1.调试实例讲解（2） 校招笔试题 2.如何写出好的（易…

Python 2023年9月15日
0138
• #### Pandas之Series和DataFrame

Pandas的数据结构分析 Pandas中有两个主要的数据结构： Series 和 DataFrame，其中 Series 是一维的数据结构， DataFrame 是二维的、表格性…

Python 2023年8月7日
0113
• #### 基于MMRotate训练自定义数据集 做旋转目标检测 2022-3-30

本文目录 简述 1.MMrotate下载 2.环境安装 3.自定义数据集制作 * 3.1 roLabelImg 打标签 3.2 生成DOTA数据集格式的标签 3.3 数据集裁剪（s…

Python 2023年8月2日
0146