菜鸟"Python"之————题海战术(4)

函数的阶乘    10以内的阶乘
def jc(num):
    if num==1:
        return 1
    ret=jc(num-1)
    return num *ret
result=jc(5)
print(result)

#函数的递归
def nums(a):
    print(a)
    if a==1:
        return
    nums(a-1)
    print('<<<--------->>>')
nums(4)

斐波那契数列  1,2,3,5,8,13,21,34,55,89,144,233.....

def feibo(num):
    a=1
    b=1
    if num<=2:                   # if
        print(a,a+b,end=" ")     #  else
    else:                        #   语句可以不用
        while num>0:
            print(b,end=" ")
            a,b=b,a+b
            num-=1
feibo(5)


字符串  遍历就是 for i in
a='127423456789'
print(a.count('2'))  #查询2出现的次数

print(a.find('1'))   #从左往右指定索引查找 显示下标    找不到会返回-1

print(a.rfind('4'))   #从右往左指定索引查找。显示下标    找不到会返回-1

print(a.index('1'))   #从左往右指定索引查找,显示下标,但是找不到会报错

print(a.rindex('3'))   #从右往左指定索引查找,显示下标,但是找不到会报错

print(a.split('3'))     #按照指定内容进行分割,会默认删除要分割的

print(a.replace('1','9')) #从左往右替换指定的元素,默认替换所有的

print(a.center(20,'#'))   #让指定长度居中

print(a.strip())          #默认去除两边的空格

print(a.rstrip())           #默认去除右边的空格

print(a.lstrip())              #默认去除左边的空格

print(a.ljust(20,'$'))          #让字符串指定的长度左对齐,右边用指定内容填充

print(a.rjust(20,'$'))          #让字符串指定的长度右对齐,右边用指定内容填充

def feibo(num):
    a=1
    b=1
    # if num<=2:                   # if
    #     print(a,a+b,end=" ")     #  else
    # else:                        #   语句可以不用
        while num>0:
            print(b,end=" ")
            a,b=b,a+b
            num-=1
feibo(5)



for i in range(1,10):
   for j in range(1,i+1):
       print('{}*{}={}'.format(j,i,j*i),end=" ")
   print(" ")


for i in range(6):
    for j in range(6):
        if i==0 or i==5 or j==0 or j==5:
            print('&',end=" ")
        else:
            print(" ",end=" ")
    print()


练习 求7 的倍数和以7结尾的数
a=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19)   #for i in 这是遍历元祖 将元素一个一个的取出来
for i in a:
    if i%7==0 or i%10==7:
        print(i,end=" ")

输出元祖内奇偶数的个数
a=(1,2,3,4,5,6,7,8,9)
js=0
os=0
for i in a:
    if i%2==0:
        os+=1
        print('偶数:',i,'\t')
    else:
        js+=1
        print('奇数:',i,end=" ")
    i+=1
print('奇数:%d个,偶数%d个'%(js,os))


输出元祖内最大值,最小值,和其下标
a=(1,3,4,23,4,54,7,8,65,21)     #  i 为其元祖下标
zd=a[0]
zx=a[0]
zdx=0
zxx=0
i=0
while i<len(a):
    if a[i]>zd:
        zd=a[i]
        zdx=i
    elif a[i]<zx:
        zx=a[i]
        zxx=i
    i+=1
print("最大值是%d,下标是%d"%(zd,zdx))
print('最小值是%d,下标是%d'%(zx,zxx))

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值