你必须知道的常用的足够简练的Python代码

news2024/12/23 9:14:35

许多程序员喜欢Python,因为它的语法简单简洁。下面提供的这些 Python 代码足够简练,可用于解决常见问题。


1.提取字典的键值对

dict1 = {'A':33, 'B':43, 'C':88, 'D':56}
# 提取字典中值大于50的键值对
dict2 = { key:value for key, value in dict1.items() if value > 50 }
print(dict2)

set1 = {'A','C'}
# 提取字典中键包含在集合中的键值对
dict3 = { key:value for key,value in dict1.items() if key in set1 }
print(dict3)

「输出:」

{'C': 88, 'D': 56} {'A': 33, 'C': 88}

2.搜索和替换文本

可以使用 str.replace() 方法搜索和替换字符串中的文本。

str1 = "http://www.zbxx.net"
str1 = str1.replace("http", "https")
print(str1)

「输出:」

https://www.zbxx.net

对于更复杂的搜索替换,可以使用 re 模块。Python 中的正则表达式可以使复杂的任务变得更加容易。

3.过滤列表元素

可以使用列表推导式根据特定条件过滤列表中的元素。

list1 = [12, 56, 34, 76, 79]
# 提取列表中大于50的元素
list2 = [i for i in list1 if i>50]
print(list2)

「输出:」

[56, 76, 79]

4.对齐字符串

可以使用 ljust()、rjust() 和 center() 方法对齐字符串。 可以实现左对齐、右对齐及使字符串在给定宽度的范围居中对齐。

str1 = "Python"
print(str1.ljust(10))
print(str1.center(10))
print(str1.rjust(10))

「输出:」

Python
  Python
    Python

还可以使用字符填充。

str1 = "Python"
print(str1.ljust(10, '#'))
print(str1.center(10, '#'))
print(str1.rjust(10, '#'))

「输出:」

Python####

##Python##

####Python

5.将序列拆解为单独的变量

可以使用赋值运算符将任何序列拆解到变量中,只要变量的数量和序列的元素数量相互匹配。

tup1 = (1, 2, 3)
a, b, c = tup1
print(a,b,c)

「输出:」

1 2 3

6.任意数量参数的函数

自定义函数中,需要使用 “*” 来接受任意数量的参数。

def mysum(value1,*value):
    s=value1+sum(value)
    print(s)
mysum(10, 10)
mysum(10, 10, 10)

「输出:」

20 30

7. 反向迭代

可以使用 reversed() 函数、range() 函数和切片技术以相反的顺序迭代序列。

list1 = [1, 2, 3, 4, 5, 6]
for i in reversed(list1):
    print(i,end='')
list1 = [1, 2, 3, 4, 5, 6]
for i in range(len(list1) -1, -1, -1):
    print(list1[i],end='')
list1 = [1, 2, 3, 4, 5, 6]
for i in list1[::-1]:
    print(i,end='')

「输出:」

654321

8.写入尚不存在的文件

如果只想在文件不存在时才写入该文件,则需要在 x 模式(独占创建模式)下打开该文件。

with open('abc.txt', 'x') as f:
    f.write('Python')

如果文件已经存在,则此代码将导致 Python 出错:FileExistsError。

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/601506.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

curl 命令-接口测试

curl 命令-接口测试 JUST DO IT 温暖春日 在linux/Unix 为代表的os上, 对后端进行测试, 模拟连接请求都会书写脚本 场景: 在Linux 上接口测试工具有ab, restClient, postman等, 最常用的方法是curl进行简单测试 curl是非常方便的Rest 客户端, 可以很方便的完成 Rest API测…

Hadoop教程第一章之Hadoop简介

1. Hadoop是什么 Hadoop是一个由Apache基金会所开发的分布式系统基础架构。主要解决,海量数据的存储和海量数据的分析计算问题。广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。 2. Hadoop的三大发行版本 Apache版本最原始&#xff08…

Python读取SD卡二进制数据

在我们使用 STM32 或者 FPGA 采集数据的时候,需要将数据存储到SD卡中,因为数据是按照地址存储的,并且没有文件结构,所以不能直接用电脑的文件管理器读取,下面是一种读取数据的办法 实验平台 正点原子STM32F407ZG探索…

现代化智能十防一体化智慧档案馆平台所具备的必要功能

现代化智能档案室的建设以物联网技术为支撑,包括智能密集架、恒温恒湿消毒净化设备、温湿度传感器、空气质量传感器、空气净化消毒设备、红外防盗设备、门禁设备、防火设备、漏水设备、预警设备、视频监控设备等,集中为一体的管理平台为智能档案室集成平…

金融行业机房监控4大难题?你中招了吗

信息化时代的今天,信息成为我们生活和工作中不可缺少的一部分,由金融行业系统承担,每天有大量的数据交换。 因此,近年来,银行系统对其机房的要求也越来越严格,同时也越来越向智能化、集约化方向发展。 金融…

opencv c++小笔记本(三)

opencv 一图像通道的分离和合并二.图像色彩改变三.简单形状识别1.灰度处理2.高斯滤波3.边缘检测4.膨胀 三.像素点统计四.多边形的绘制和填充五.鼠标操作与响应(截图)六.图像的像素转换和归一化七.视频文件摄像头使用八.视频的处理与保存九.图像直方图十.…

ESP32-C2开发板 Homekit程序示例

准备 1.1硬件ESP32 C2开发板,如图1-1所示 图1-1 ESP32 C2开发板 1.2软件 CozyLife APP可以在各大应用市场搜索下载,也可以扫描二维码下载如图1-2所示 HomeKit flash download tool 烧录工具 esp32c2 homkit演示固件 烧录教程 打开flash_download_to…

实用工具篇(一):JApiDocs

JApiDocs是一个无需额外注解、开箱即用的SpringBoot接口文档生成工具。 编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后端代码都是自己写的,否则API…

redis哨兵模式原理

概述 为了实现redis集群的高可用,redis经历了好几次迭代,从最开始的主从模式,到哨兵模式,再到现在的集群模式,可以说架构的优化越来越好,那本篇文章就介绍一下redis的哨兵模式,不过我司其实使用…

阿里云服务器部署flask简单方法

记录如何在阿里云服务器上部署flask接口并实现公网访问。 文章目录 1. 简介2. 部署python3环境3. 生成requirement.txt4. 将项目打包上传5. 安装依赖库6. 查看防火墙7. 测试能否公网访问 1. 简介 因落地通话callback服务测试,需要我写一个测试demo,用于…

Unity Shader中使用GLSL创建材质

目录 Unity Shader格式Properties怎么在脚本中使用类似于glUniform()的功能呢? SubShaderTagsLODpasspass内的tags说明pass内的代码段(GLSL)GLSL与CG语言的差异1. GLSL不可在外部定义结构体2. 在UnityShader中Uniform可以写在vert frag外面 S…

如何处理图片排重(精准排重,相似排重)

图片相似度对比 1、需求 假如有一个图片池,存有1亿图片。给一张目标图片,在图片池中做匹配。 判断一张图片是否在图片池中出现过。(完全一样)判断有没有相似的出现过。比如两张图相似度90,两张图片是在描述一件事情。 …

请推荐几个github上的vue的pc端项目?

前言 这是github上一些高收藏的vue PC端的项目,花了一点时间做了一下vue2和vue3的资源分类整理,可以根据自己的学习进度以及需求来选择对应的项目来研究,希望对你有帮助~ Vue2 PC项目 1、 Elemen Star:53.4k 是一个基于Vue.js…

【Unity Optimize】使用图集(Sprite Atlas)优化项目

目录 1 图集(Sprite Atlas)介绍2 创建与配置Sprite Atlas2.1 创建Sprite Atlas2.1.1 Unity2D项目2.1.2 Unity3D项目 2.2 配置Sprite Atlas2.3 注意事项 3 Sprite Atlas的接口4 Sprite Atlas的优化建议 1 图集(Sprite Atlas)介绍 …

vue3+element plus+vite 引入本地静态资源图片require报错的原因和解决方案,以及如何在表格中展示图片

文章目录 一、vue3element plusvite 引入本地静态资源图片require报错的原因和解决方案二、vue 3element plusvite 项目中,在el-table中展示本地静态图片总结 一、vue3element plusvite 引入本地静态资源图片require报错的原因和解决方案 在写vue3vite项目的过程中…

Java-代码连接数据库生成POJO、Mapper

本文主要介绍如何在IDEA中,编写代码连接数据库生成对应的POJO、Mapper、Service、Controller 文章目录 前言环境搭建代码开发基本配置常量信息代码生成 测试结果 前言 在实际开发中,设计完数据库后,不可避免需要创建数据库表对应的POJO&…

rt-thread汇总

finish和msh的区别? 这个问题我一直没搞懂,可能得看一下源码才能搞清楚了吧 通过Qemu运行RT-Thread 在windows上通过QEMU快速上手RT-thread smart RT-thread启动流程 rt-thread启动流程 Kconfig语法 Kconfig语法 LOG输出 rt_kprintf("Hello …

InsCode AI ,你的良师益友!

Chat-GTP的火爆程度相信大家已经听说了,也对它有一个基本的初识,它是Open AI所研发的,读者当中应该有不少人已经接触和体验人工智能聊天,以及使用它交流很多问题有关于生活,学习等,而 InsCode AI 也一样能够…

javaWeb ssh学堂在线管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh学堂在线管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0…

30天从入门到精通TensorFlow1.x 第三天,tf.variable_scope()共享或重用变量

tf.variable_scope()共享或重用变量 文章目录 一、接前一天二、tf.variable_scope()共享或重用变量1. 背景2. 目的3. tf.variable_scope()基本参数3. tf.variable_scope()作用(1).命名空间(2).共享变量(3).…