前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python的基本骚操作(长期更新)

Python的基本骚操作(长期更新)

作者头像
SingYi
发布2022-07-14 15:01:34
1840
发布2022-07-14 15:01:34
举报
文章被收录于专栏:Lan小站Lan小站

最近在网上看到一些Python的一些基本但是非常实用的操作。

元素相关

多赋值:

代码语言:javascript
复制
a = b = c = 'www.lanol.cn'
print('a的值:'+a)
print('b的值:'+b)
print('c的值:'+c)
image.png
image.png

交换元素的值:

代码语言:javascript
复制
a = "我是a的值"
b = "我是b的值"
a,b = b,a
print('a:'+a)
print('b:'+b)
image.png
image.png

元素自操作:

代码语言:javascript
复制
a = 5
a +=1 #自加1
a -=1 #自减1
a /=2 #自除2
a *=2 #自乘2
a **=2 #自己的2次方
print(a)
image.png
image.png

使用三元操作符赋值:

三元操作符是 if-else 语句也就是条件操作符的一个快捷方式:

代码语言:javascript
复制
[表达式为真的返回值] if [表达式] else [表达式为假的返回值]

这里给出几个你可以用来使代码紧凑简洁的例子。下面的语句是说“如果 y 是 9,给 x 赋值 10,不然赋值为 20”。如果需要的话我们也可以延长这条操作链。

代码语言:javascript
复制
x = 10 if (y == 9) else 20

同样地,我们可以对类做这种操作:

代码语言:javascript
复制
x = (classA if y == 1 else classB)(param1, param2)

在上面的例子里 classA 与 classB 是两个类,其中一个类的构造函数会被调用.

下面是另一个多个条件表达式链接起来用以计算最小值的例子:

代码语言:javascript
复制
In [10]: def small(a,b,c):
    ...:     return a if a<=b and a<=c else ( b if b<=a and b<=c else c) 
    ...: 
 
In [11]: small(1,0,1)
Out[11]: 0
 
In [12]: small(1,2,3)
Out[12]: 1

我们甚至可以在列表推导中使用三元运算符:

代码语言:javascript
复制
In [14]: [ m**2 if m > 10 else m**4 for m in range(20) ] 
Out[14]: 
[0,1,16,81,256,625,1296,2401,4096,6561,10000,121,144,169,196,225,256,289,324,61]

列表相关

判断列表是否为空:

代码语言:javascript
复制
def test1():
    arr1 = [1, 2, 3, 4, 5]
    arr2 = []
 
    # 不推荐
    if len(arr1)!=0:
        print("arr1 is not empty-len!")
    if len(arr2)!=0:
        print("arr2 is not empty-len!")
 
    # 推荐
    if arr1:
        print("arr1 is not empty!")
    if arr2:
        print("arr2 is not empty!")

遍历列表,获取索引下标:

代码语言:javascript
复制
def test3():
    l1 = [11, 22, 30, 41, 51]
 
    # 不推荐
    for i in xrange(0, 5):
        print("%s->%s" %(i, l1[i]))
 
    # 推荐
    for i, v in enumerate(l1):
        print("%s->%s" % (i, v))

字典列表生成式:

代码语言:javascript
复制
def test5():
    dict1 = {1: "val1", 2: "val2", 3: "val3", 5: "val5"}
 
    dict2 = {k*2: v for k, v in dict1.items()}
    print(dict2)

其他相关

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 元素相关
  • 列表相关
  • 其他相关
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档