2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

15 个提高效率的 Python 编程技巧

  • 2020-03-13
  • 本文字数:936 字

    阅读完需:约 3 分钟

15个提高效率的Python编程技巧


每次写 Python 都会忘记该怎么写,最后只能去 Stack Overflow 查?我也一样。时间一长,这让人厌倦。


这 15 个 Python 技巧和窍门,可以帮你提高效率。

1.交换值

x, y = 1, 2print(x, y)x, y = y, xprint(x, y)
复制代码

2.字符串列表合并为一个字符串

sentence_list = ["my", "name", "is", "George"]sentence_string = " ".join(sentence_list)print(sentence_string)
复制代码

3.将字符串拆分为子字符串列表

sentence_string = "my name is George"sentence_string.split()print(sentence_string)
复制代码

4.通过数字填充初始化列表

[0]*1000 # List of 1000 zeros [8.2]*1000 # List of 1000 8.2's
复制代码

5.字典合并

x = {'a': 1, 'b': 2}y = {'b': 3, 'c': 4}z = {**x, **y}
复制代码

6.反转字符串

name = "George"name[::-1]
复制代码

7.从函数返回多个值

def get_a_string():  a = "George"  b = "is"  c = "cool"  return a, b, csentence = get_a_string()(a, b, c) = sentence
复制代码

8.列表解析式

a = [1, 2, 3]b = [num*2 for num in a] # Create a new list by multiplying each element in a by 2
复制代码

9.遍历字典

m = {'a': 1, 'b': 2, 'c': 3, 'd': 4} for key, value in m.items():  print('{0}: {1}'.format(key, value))
复制代码

10.同时遍历列表的索引和值

m = ['a', 'b', 'c', 'd']for index, value in enumerate(m):  print('{0}: {1}'.format(index, value))
复制代码

11.初始化空容器

a_list = list()a_dict = dict()a_map = map()a_set = set()
复制代码

12.删除字符串两端的无用字符

name = "  George "name_2 = "George///"name.strip() # prints "George"name_2.strip("/") # prints "George"
复制代码

13.列表中出现最多的元素

test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4]print(max(set(test), key = test.count))
复制代码

14.检查对象的内存使用情况

import sysx = 1print(sys.getsizeof(x))
复制代码

15.将 dict 转换为 XML

from xml.etree.ElementTree import Elementdef dict_to_xml(tag, d):    '''    Turn a simple dict of key/value pairs into XML    '''    elem = Element(tag)    for key, val in d.items():        child = Element(key)        child.text = str(val)        elem.append(child)    return elem
复制代码


英文原文:


15 Python tips and tricks, so you don’t have to look them up on Stack Overflow


2020-03-13 16:317763
用户头像

发布了 229 篇内容, 共 157.3 次阅读, 收获喜欢 227 次。

关注

评论 6 条评论

发布
用户头像
就这?
2020-04-01 10:57
回复
用户头像
就这?
2020-03-20 16:55
回复
用户头像
是我变强了吗?感觉就是自己平常的使用的一些写法😂😂😂
2020-03-16 10:37
回复
应该是:“是我变秃了吗?”
2020-03-20 17:21
回复
用户头像
谢谢! 对我帮助很大!
2020-03-15 16:22
回复
真的假的,水军吧
2020-03-25 18:54
回复
没有更多了
发现更多内容

openGauss 社区 2022 年 9 月运作报告

如何优雅地编写一个高逼格的JS插件?

茶无味的一天

JavaScript 前端 js JS插件

知道了web的攻击方式,还不快防起来?

CoderBin

前端 安全 10月月更

创新公司iLabService 释普科技启示录

B Impact

软件测试 | 测试开发 | Java or Python?测试开发工程师如何选择合适的编程语言?

测吧(北京)科技有限公司

测试

你好,广州!openGauss广州用户组招募计划正式开启

《编程的原则》读书笔记(二): 编程理论的三个思想和六个实现原则

Chares

软件工程 软件开发 编程原理 软件开发原则

云图说丨带你了解GaussDB(for Redis)双活解决方案

华为云开发者联盟

数据库 数据资产 云数据库 企业号十月 PK 榜

defi质押挖矿存币生息理财系统开发

开发微hkkf5566

啃完这些Spring知识点,我竟吊打了阿里面试官(附面经+笔记)

Geek_0c76c3

Java 数据库 开源 面试 开发

企业社会责任先行,公益课程推动环保科普教育

科技之家

旺链科技入选2022“科创中国”创新成果名单

旺链科技

区块链 金融科技 产业区块链

DAG 任务调度与 go-streams 结合的应用实践

KaiwuDB

【一Go到底】第九天---进制

指剑

Go golang 10月月更

独家巨献!阿里技术专家兼Github贡献者,整理的Spring Security入门到成神

Geek_0c76c3

Java 数据库 开源 程序员 开发

易操作、可观测、可扩展,EMQX如何简化物联网应用开发

EMQ映云科技

运维 物联网 IoT emqx 10月月更

Flowable 中 ReceiveTask 怎么玩?

江南一点雨

Java springboot workflow flowable JavaEE

C语言中的内存模型

C++后台开发

内存模型 C语言 C/C++ linux开发 C++开发

OpenHarmony有氧拳击之应用端开发

OpenHarmony开发者

OpenHarmony

10分钟开发Kubernetes Operator

俞凡

架构 Kubernetes 云原生

32天高效突击:狂刷《Java权威面试指南(阿里版)》,offer拿到手软!

Geek_0c76c3

Java 数据库 开源 程序员 开发

【活动报名】共建云原生开源生态 PolarDB × Curve 线下 Meetup 来袭!(杭州站)

阿里云数据库开源

数据库 阿里云 开源 polarDB

Google 发布:DevOps 2022现状报告

SEAL安全

DevOps 研发效能 软件交付 软件供应链

大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch

Lansonli

Filebeat 10月月更

软件测试 | 测试开发 | Google 测试总监聊如何经营成功的测试职业生涯

测吧(北京)科技有限公司

测试

干货|仅需3步完成酷炫数据可视化大屏制作!

云智慧AIOps社区

大前端 低代码 数据可视化 智慧大屏可视化 可视化大屏

网络安全漏洞分析之远程代码执行

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

算法统治者!打破传统方式,即将爆火的Leetcode刷题指南

Geek_0c76c3

Java 数据库 开源 程序员 开发

携手武汉白鱀豚保护基金会,英特尔以责任为先多举推动环保公益

科技之家

SQL抽象语法树及改写场景应用

京东科技开发者

sql SQL优化 场景应用 SQL语言 抽象语法树

15个提高效率的Python编程技巧_语言 & 开发_George Seif_InfoQ精选文章