外链论坛

 找回密码
 立即注册
搜索
查看: 44|回复: 1

【将来虫教育】几个技巧让你的Python代码更专业

[复制链接]

2946

主题

3万

回帖

9997万

积分

论坛元老

Rank: 8Rank: 8

积分
99979425
发表于 2024-8-17 07:36:09 | 显示全部楼层 |阅读模式

近期几年时间,国内的Python研发者越来越多,然则非常多研发者都是从其他编程语言转换阵营来到Python的。正是由于这般原由非常多Python研发者的代码中都保存了其他语言的编程习惯,这般的代码看起来就显出很不专业,非常的不”Pythonic“。

其实Python语言有非常多专属的“编程惯例”,“惯例”这个词根据词典上的解释便是“习惯的做法,常规的办法,一贯的做法”。做为一个Python研发者,尤其是”跨界程序员“,倘若能够把握这些惯例,就能够写出“Pythonic”的代码。

技巧1:让代码既能够被导入又能够被执行。

if __name__ == __main__:

技巧2:用下面的方式判断规律“真”或“假”。

if x:

if not x:

“Pythonic”的代码:

name = jackfrued

fruits = [apple, orange, grape]

owners = {1001: 骆昊, 1002: 王大锤}

if name and fruits and owners:

print(I love fruits!)

“跨界程序员”的代码:

name = jackfrued

fruits = [apple, orange, grape]

owners = {1001: 骆昊, 1002: 王大锤}

if name != and len(fruits) > 0 and owners != {}:

print(I love fruits!)

技巧3:善于运用in运算符。

if x in items:

for x in items:

“Pythonic”的代码:

name = Hao LUO

if L in name:

print(The name has an L in it.)

“跨界程序员”的代码:

name = Hao LUO

if name.find(L) != -1:

print(This name has an L in it!)

技巧4:不运用临时变量交换两个值。

a, b = b, a

技巧5:用序列构建字符串。

“Pythonic”的代码:

chars = [j, a, c, k, f, r, u, e, d]

name = .join(chars)

print(name)

“跨界程序员”的代码:

chars = [j, a, c, k, f, r, u, e, d]

name =

for char in chars:

name += char

print(name)

技巧6:EAFP(Easier to Ask Forgiveness than Permission)优于LBYL(Look Before You Leap)。

“Pythonic”的代码:

d = {x: 5}

try:

value = int(d[x])

print(value)

except (KeyError, TypeError, ValueError):

value = None

“跨界程序员”的代码:

d = {x: 5}

if x in d and isinstance(d[x], str) and d[x].isdigit():

value = int(d[x])

print(value)

else:

value = None

技巧7:运用enumerate进行迭代。

“Pythonic”的代码:

fruits = [orange, grape, pitaya, blueberry]

for index, fruit in enumerate(fruits):

print(index, :, fruit)

“跨界程序员”的代码:

fruits = [orange, grape, pitaya, blueberry]

index = 0

for fruit in fruits:

print(index, :, fruit)

index += 1

技巧8:用生成式生成列表、集合和字典。

“Pythonic”的代码:

data = [7, 20, 3, 15, 11]

result = [num * 3 for num in data if num > 10]

print(result)

“跨界程序员”的代码:

data = [7, 20, 3, 15, 11]

result = []

for i in data:

if i > 10:

result.append(i * 3)

print(result)

技巧9:用zip组合键和值来创建字典。

“Pythonic”的代码:

keys = [1001, 1002, 1003]

values = [骆昊, 王大锤, 白元芳]

d = dict(zip(keys, values))

print(d)

“跨界程序员”的代码:

keys = [1001, 1002, 1003]

values = [骆昊, 王大锤, 白元芳]

d = {}

for i, key in enumerate(keys):

d[key] = values[i]

print(d)

讲到这儿大众能够把自己的代码对号入座一下,瞧瞧自己写的是“Pythonic”的还是“跨界程序员”代码。如果想让自己的代码更加专业,必定要先从写出“Pythonic”的代码起始。后面我还会继续为大众分享编写Python代码的技巧,把握这些技巧肯定能让你的Python代码帅到没伴侣的。

返回外链论坛:www.fok120.com,查看更加多

责任编辑:网友投稿





上一篇:新疆最专业的摄影培训企业-聚焦前途教育
下一篇:你认为Python少儿编程有用吗?【揭秘儿童编程的黄金语言】
回复

使用道具 举报

2996

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109194
发表于 2024-11-6 12:30:28 | 显示全部楼层
你的留言真是温暖如春,让我感受到了无尽的支持与鼓励。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|外链论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-23 02:01 , Processed in 0.109243 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.