python --- 倒序输出数组中重复的数字

返回数组中重复的数字

#coding=utf8
#1.对比判断是否存在重复的数字,是则加入k;2.判断要加入的数字在k是否已存在,若已存在则跳过
def sum(L):
    for i in range(len(L)):
        for j in range(i+1,len(L)):
            if L[i] in k:
                    break
            elif L[i]==L[j]:                
                k.append(L[i])
                break
    return k

倒序输出数组中不重复的数字

k=[]
L=[12,3,33,33,4,2,4,3]
for i in set(L):
    k.append(i)
    k.reverse()
print k


倒序


方法一:倒序输出函数,简单的步长为-1, 即字符串的翻转(常用)

def reverse(L):
    for i in L[::-1]:
        j.append(i)
    return j

k=[]
j=[]
L = [1,2,33,45,6,2,33,4,4,5,33,6,4]
print sum(L)
print reverse(k)

方法二:通过递归实现 (递归必须有终止条件)

#递归的方式, 每次输出一个字符;
#coding=utf8
#1.进栈a,b,c,d,e,f   2.当只剩最后一个字母时,返回f  3.接着依次退出e,d,c,b,a  
L='abcdef'
def reverse(L):
    if len(L)==1:
        return L
    else:
        return reverse(L[1:])+L[0]
print reverse(L)

方法三:通过range()实现倒序

#简单的步长为-1, 使用for循环, 从右至左输出;
#range(start, end, step)
L='abcdef'
for i in range(len(L)-1,-1,-1):        #从下标5开始到0,每次减1
    print L[i]

方法四:通过交换前后字母的位置实现倒序

s='abcdef'
t=list(s)
l=len(s)
def reverse(s):
    #下标5.4.3和0.1.2的数进行交换
    for i,j in zip(range(l-1,0,-1),range(l/2)):
        t[i],t[j] = t[j],t[i]
    return ''.join(t)

print reverse(s)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值