python练习题(一)

发布时间:2019-07-16 10:09:38编辑:auto阅读(1416)

    一、用python写一个列举当前目录以及所有子目录下的文件,并打印出绝对路径



    #!/usr/bin/env python

    import os

    for root,dirs,files in os.walk('/tmp'):

        for name in files:

            print (os.path.join(root,name))



    os.walk()

    原型为:os.walk(top, topdown=True, onerror=None, followlinks=False)

    我们一般只使用第一个参数。(topdown指明遍历的顺序)
    该方法对于每个目录返回一个三元组,(dirpath, dirnames, filenames)。第一个是路径,第二个是路径下面的目录,第三个是路径下面的非目录(对于windows来说也就是文件)

    os.listdir(path) 

     

    其参数含义如下。path 要获得内容目录的路径



    二、写程序打印三角形


    #!/usr/bin/env python

    input = int(raw_input('input number:'))

    for i in range(input):

        for j in range(i):

            print '*',

        print '\n'



    三、猜数器,程序随机生成一个个位数字,然后等待用户输入,输入数字和生成数字相同则视为成功。成功则打印三角形。失败则重新输入(提示:随机数函数:random)


    #!/usr/bin/env python

    import random

    while True:

        input = int(raw_input('input number:'))

        random_num = random.randint(1, 10)

        print input,random_num

        if input == random_num:

            for i in range(input):

                for j in range(i):

                    print '*',

                print '\n'

        else:

            print 'please input number again'


    四、请按照这样的日期格式(xxxx-xx-xx)每日生成一个文件,例如今天生成的文件为2013-09-23.log, 并且把磁盘的使用情况写到到这个文件中。

    #!/usr/bin/env python

    #!coding=utf-8

    import time

    import os

    new_time = time.strftime('%Y-%m-%d')

    disk_status = os.popen('df -h').readlines()

    str1 = ''.join(disk_status)

    f = file(new_time+'.log','w')

    f.write('%s' % str1)

    f.flush()

    f.close()


    五、统计出每个IP的访问量有多少?(从日志文件中查找)

    #!/usr/bin/env python

    #!coding=utf-8

    list = []

    f = file('/tmp/1.log')

    str1 = f.readlines() 

    f.close() 

    for i in str1:

        ip =  i.split()[0]

        list.append(ip) 

    list_num = set(list)

    for j in list_num: 

        num = list.count(j) 

        print '%s : %s' %(j,num)


关键字

上一篇: python之执行shell命令

下一篇: Python之函数