报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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:317579
用户头像

发布了 171 篇内容, 共 115.8 次阅读, 收获喜欢 211 次。

关注

评论 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
回复
没有更多了
发现更多内容

百度大脑UNIT拍了拍你,提醒你报名智能对话训练营

百度大脑

物联网 智能对话

jmeter命令行执行测试并对测试报表进行初步分析

行者AI

测试 Jmeter

打破思维定式(六)

Changing Lin

5月日更

自己动手丰衣足食——自定义下拉框vue组件

空城机

vue.js 大前端 vue cli 5月日更 编写组件

七面阿里险幸上岸,入职就是40*16K。网友:Java 面经交出来

Java 程序员 架构 面试 计算机

自动发布.NET Core Web应用

吴脑的键客

DevOps 运维自动化 jenkins dotnet

腾讯云大神亲码“redis深度笔记”,从基础到源码,应有尽有

Java 编程 程序员 架构

耗时1年的前端技术框架切换之旅

华为云开发者联盟

大前端 软件工程 React 框架

使用docker compose快速部署前后端分离项目案例

皮特王

nginx Docker Vue Docker-compose

【欢乐叫地主流程】需求分析/用例设计+游戏测试工作流程/测试计划

程序员阿沐

软件测试 需求分析 测试用例 游戏测试 测试计划

架构实战营-详细架构设计文档

Simon

架构实战营

阿里云入选 2021 Gartner APM 魔力象限,国内唯一入选云厂商

阿里巴巴云原生

阿里云 容器 微服务 运维 云原生

技术干货|7个 React 性能提升技巧

拍乐云Pano

React

恍然大悟丨Java 中 RMI 的使用

Java架构师迁哥

详解百度富媒体检索比对系统的关键技术

百度Geek说

大数据 后端 检索 #富媒体#

开发者必看,面试官心中的最佳数据库人才模型是什么样?

华为云开发者联盟

面试 开发者 华为云数据库 数据库人才

高德 Serverless 平台建设及实践

阿里巴巴云原生

Serverless 运维 云原生 监控 中间件

腾讯T6大牛体系化带你学习Java面向对象,网友:这详解,太清晰了

牛哄哄的java大师

Java 面向对象 面向对象编程

五一假期回乡,跟大家聊聊感触

架构精进之路

心情 杂记 5月日更

只会重装系统的运维,不是好运维

运维研习社

Linux 5月日更 系统修复

工商银行分布式服务 C10K 场景解决方案

阿里巴巴云原生

容器 微服务 云原生 监控 应用服务中间件

精选Hive高频面试题11道,附答案详细解析

五分钟学大数据

大数据 hive 5月日更

大数据实战:网站流量日志数据分析

大数据技术指南

大数据 5月日更

【LeetCode】解码异或后的排列Java题解

Albert

算法 LeetCode 5月日更

Python OOP-5

若尘

oop Python编程 5月日更

一个朋友学会Java泛型后直接薪资翻倍!

北游学Java

Java 泛型

HarmonyOS开发者创新大赛预选赛结束,23支队伍脱颖而出闯入决赛

Geek_283163

鸿蒙

技术实践丨如何解决异步接口请求快慢不均导致的数据错误问题?

华为云开发者联盟

JavaScript typescript 大前端 浏览器 angular

SICP 习题2.6之丘奇数

程序员历小冰

函数式编程 SICP 5月日更

华为云PB级数据库GaussDB(for Redis)揭秘第九期:与HBase的对比

华为云开发者联盟

HBase 华为云 开源数据库 NoSQL数据库 数据库GaussDB(for Redis)

网页视频下载教程(腾讯, B站, 优酷, 爱奇艺)

科技猫

经验分享 教程 视频处理 工具分享 网页视频下载

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