• python函数小练习


    练习函数的同学看过来
    #coding=utf-8
    #3.1 7行7列指定图案构成的图形
    def graph(n):
    if n==1:
    print ' @ '*7
    if n==2:
    print '@@@@@@@'
    print ' @'
    print ' @'
    print '@@@@@@@'
    print '@'
    print '@'
    print '@@@@@@@'
    graph(1)
    graph(2)
    # *号等于图案的数量
    #3.2 一个字符串list,每个元素都是一个ip,求出现次数最多的ip
    list=['10.199.88.161','10.199.88.162','10.199.88.163','10.199.88.163','10.199.88.163']
    dict={}
    li=[]
    for i in list:
    if not dict.has_key(i):
    dict[i]=1
    else:
    dict[i]+=1
    for i in dict.keys():
    if dict[i]==max(dict.values()):
    print u'出现次数最多的ip是:',i
    #has_key方法的调用和字典键值对的访问

    #3.3 函数写出菲波那切数列(兔子公式)
    def fibonaqie(n):
    if n==0:
    return 0
    if n==1:
    return 1
    if n>1:
    return fibonaqie(n-2)+fibonaqie(n-1)
    print fibonaqie(5)
    #深刻理解fibonaqie(2)是怎么走的就很简单了

    #3.4 写一个函数,识别是否字符串符合python语法的变量名
    import string
    def var(v):
    if v[0] not in string.letters:
    print u'这个字符串不符合规则'
    return False
    if v[-1] not in (string.letters+string.digits):
    print u'这个字符串不符合规则'
    return False
    for i in v[1:-2]:
    if i in (string.letters+string.digits+'_'):
    print u'这个字符串符合规则'
    return True
    else:
    print u'这个字符串不符合规则'
    return False
    var('asda_123')
    var('asda_123_')
    var('11')
    var('*&^')

    #3.9 写个字符串,通过遍历的方式计算字符串的长度
    def jlen(str):
    x = 0
    for i in str:
    x+=1
    print u'该字符串的长度为:',x
    return x
    jlen('xiegezifuchuan')
    #3.10 写入不定个数的字符串拼接第一个和最后一个字符串
    def splicing(*args):
    return args[0]+args[-1]
    print splicing('1','2','3')

    #3.11 定义一个函数,输入不定个数的数字,返回所有数字的和
    def sumofdigits(*args):
    x=0
    for i in args:
    x+=i
    return x
    print sumofdigits(1,2,3,4,5)

    #3.12 传入多个参数,以list返回
    def returnlist(*args):
    li=[]
    for i in args:
    li.append(i)
    return li
    print returnlist(1,2,3,4)

    #3.13 任意输入年月日,计算出这是这一年的哪一天
    def whichday(m,d):
    if m in (1,3,5,7): return u'这是今年第'+str((m-1)*30+(m-1)/2+d-2)+u'天' if m in (2,4,6,8,10,12): return u'这是今年第'str((m-1)*30+m/2+d-2)+u'天' if m in (9,11): return u'这是今年第'str((m-1)*30+(m+1)/2+d-2)+u'天'print whichday(3,25)#数学题-。-
  • 相关阅读:
    ES6对象展开运算符
    Vue中keep-alive的深入理解和使用
    彻底明白VUE修饰符sync
    函数去抖和函数节流
    vue cli4.0 配置环境变量
    什么是process.env?
    new Function和with
    inline-block元素没有对齐的解决方案及总结
    【译文】为什么你的浏览器会限制并发网络调用的数量?
    高德地图Marker缩放位置变化
  • 原文地址:https://www.cnblogs.com/xinguichun/p/6005000.html
Copyright © 2020-2023  润新知