py的一些小技巧

写在前面:

回家了,周二晚上九点半就到家了,今天是周六。下周居然tm生产实习,还是线上授课。

 

① 括号看成一行

cmd = ("这是第一行"
       "这是第二行"
       "这是第三行")


print(cmd)
# 这是第一行这是第二行这是第三行

② 解包

常规操作

a, (b, c) = 1, [2, 3]
print("a:", a, "b:", b, "c:", c)

a, *rest = [1, 2, 3]
print(a, rest)
# 1 [2, 3]

a, *middle, c = [1, 2, 3, 4, 5]
print(a, middle, c)
# 1 [2, 3, 4] 5

 

③ N个相同对象的列表

four_none = [None] * 4
print(four_none)
# [None, None, None, None]
four_none[2] = 1
print(four_none)
# [None, None, 1, None]

下面还是个挺重要的例子, 非常有参考意义

four_lists = [[]] * 4
print(four_lists)
# [[], [], [], []]
four_lists[0].append("Ni")
print(four_lists)
# [['Ni'], ['Ni'], ['Ni'], ['Ni']]
# ####################################
# 出现了这种情况,修改了第一个结果全被修改了。

four_list = [[] for _ in range(4)]
four_list[0].append("Ni")
print(four_list)
# [['Ni'], [], [], []]
# 而列表生成式却不会这个样子, 再次提醒自己多用列表生成式

 

④ 关于 __init__

    pack目录下的modu.py文件可以通过import pack module语句导入。首先解释器会在pack目录下查找__init__.py,

执行其中的所有顶级语句。    

 

⑤ 关于拼接字符串

# 辣鸡方式(本人惯用方式)
s = ""
for c in (97, 98, 99):
    s += chr(c)
print(s)

# 比较好的方式
l = []
for c in (97, 98, 99):
    l.append(chr(c))
print("".join(l))

# 最好的方式
r = (97, 98, 99)
s = [chr(c) for c in r]
print("".join(s))

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值