专栏首页北京马哥教育五个python常用运维脚本面试题实例

五个python常用运维脚本面试题实例

一、用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来说也就是文件)

二、写程序打印三角形

#!/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'

四、生成磁盘使用情况的日志文件

#!/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)

作者:chengxuyuan 来源:http://blog.csdn.net/chengxuyuanyonghu/article/details/59486631

本文分享自微信公众号 - 马哥Linux运维(magedu-Linux),作者:chengxuyuan

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • wtfPython—Python中一些奇妙的代码

    wtfPython是github上的一个项目,作者收集了一些奇妙的Python代码片段,这些代码的输出结果会和我们想象中的不太一样; 通过探寻产生这种结果的内部...

    小小科
  • 经典!Python运维中常用的几十个Python运维脚本

    本文由马哥教育Python自动化实战班4期学员推荐,转载自互联网,作者为mark,内容略经小编改编和加工,观点跟作者无关,最后感谢作者的辛苦贡献与付出。 fil...

    小小科
  • 经典!Python运维中常用的几十个Python运维脚本

    file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建。但是更推荐使用内置...

    小小科
  • python练习题(一)

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

    py3study
  • Python的for循环,continu

    #break+for循环,break只跳出当前小的被嵌套的for循环                 

    py3study
  • Python(2)

        c、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值

    py3study
  • 学习笔记-小甲鱼Python3学习第九讲

    >>> fruits = ['apple','橘子','banana','哈密瓜','pear']           #水果列表frutis

    py3study
  • python for循环

    当range执行完之后,代码执行else部分代码。如果遇到break,终止循环,不会走else代码

    py3study
  • python 之 os 模块的常见用法

        2、os.name 字符串指示正在使用的平台。比如,windows是“nt”,linux 或 unix 是“posix”

    py3study
  • python3学习之for循环

    python是靠“缩进”来识别代码断的,同一代码断“必须缩进方式相同”,但是最好全部代码,缩进统一,官方建议“四个空格”,当然敲tab键很方便,但是绝大多数py...

    py3study

扫码关注云+社区

领取腾讯云代金券