Python程序设计之函数(2)

这篇博客探讨了Python程序设计中的函数应用,包括利用列表实现数据比较、字符匹配率计算、内置函数如map(), reduce(), filter(), yield生成器的讲解,dis模块的使用,函数嵌套和可调用对象的概念,以及判断素数和解析字符串的方法。通过实例展示了Python函数的灵活性和高效性。" 116937259,10536216,Ubuntu 16.04 无声音解决:声卡配置与PCIe错误修复,"['Linux操作系统', 'Ubuntu', '声卡驱动', '音频问题', '硬件故障']
摘要由CSDN通过智能技术生成

1.接受两个参数,第一个参数为x(类型为列表),第二个参数为n(表示一个在x中出现的数字),找出n在x中的位置,并将比n大的数放在n前,比n小的数放在n之后。
方法①,使用两个列表来实现数据的比较

#找出n在x中的位置,并将比n大的数放在n前,比n小的数放在n之后
import random
def dem6(x,n):
    if n not in x:
        print('the number n not in the list:',x)
        return
    j=x.index(n)
    x[0],x[j]=x[j],x[0]
    key=x[0]
    j=0
    i=len(x)-1
    while j<i:
        while j<i and x[i]>=key:
            i-=1
        x[j]=x[i]
        while j<i and x[j]<=key:
            j+=1
        x[i]=x[j]
        x[j]=key
    return (x,x.index(n))
x=list(range(1,10))
random.shuffle(x)
print(x)
print(dem6(x,4),end='\n')
print(x)

方法②使用三个列表最后合并的方法来实现

#方法二
import random
import re
def dem61(x,n):
    if n not in x:
        print('error:',x)
        return
    #i=x.index(n)
    m=[]
    c=[]
    d=[]
    for i in range(len(x)):
        if x[i]<n:
            m.append(x[i])
        elif x[i]>n:
            c.append(x[i])
        else:
            d.append(x[i])
    return m+d+c
x=list(range(1,10))
random.shuffle(x)
print(x)
print(dem61(x,4),end='\n')
print(x)

运行效果如下:

[7, 8, 4, 3, 5, 2, 1, 9, 6]
([1, 2, 3, 4, 5, 7, 8,
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值