- 论坛徽章:
- 60
|
1.你是如何学习Python的?看书?看视频?还是?
看书吧, 虽然视频也看过, 但是没坚持下去, 入门的书应该是Python基础教程(第二版), 期间也看过Python核心编程, Python学习手册, 笨办法学Python等电子书, 但都没有认认真真完完整整的看完过.
鉴于此, 特意购买了一本纸质书籍, Python学习手册(第四版), 打算扎实的搞定它.
我个人认为, 基础是最重要的, 有了扎实的基础才能融会贯通.再去进阶也不是难事儿, 遇到问题, 各种搜索引擎以及bbs, 基本上都能搞定问题.
2.你工作中有用到Python吗?主要用来做什么?
我所属的行业是游戏行业,以页游/手游为主, 刚开始都是以bash脚本为主, 我们的服务器数量众多,
工作量也相当大, 经常要去服务器执行各种功能的脚本, 着实繁琐.
于是, 我写了一套Python程序, 统筹所有功能模块的脚本, 结合web以及各个游戏的管理后台,
实现自动化控制,大大提高了工作效率, 而且降低了误操作概率.
另外, 还用利用Python解析各种Excel表格.
3.你觉得Python跟其他脚本语言比优势在哪?
其一, 它是跨平台的, 不管是windows还是*nux, 它都能使.
其二, 它有丰富的标准库模块以及第三方模块, 极大的降低了编码的复杂性, 几乎能做任何事情.
其三, 喜欢, 就是这么任性.
4.谈谈Python在自动化运维中的应用。
就我来说, 所谓自动化运维应该是: 利用Python, 结合web, 分游戏, 多任务, 多功能的完成各种开服, 合服, 迁移, 更新等日常工作.
工作效率成几何数提高.然后, 就可以打酱油了
5.给出一个你自己写的Python脚本(最好有详细注释)
发一个早前写的解析xls的脚本吧, 不过没啥对针对性- #!/usr/bin/python
- # -*- coding: utf-8 -*-
- import re
- import sys
- reload(sys)
- sys.setdefaultencoding('utf-8')
- try:
- import xlrd
- data = xlrd.open_workbook('tab1.xlsx')
- except Exception,e:
- print '文件打开出错: %s' % str(e)
- sys.exit(1)
- table = data.sheet_by_index(0)
- nrows = table.nrows
- ncols = table.ncols
- def print_r(nl):
- length = len(str(nl[0]))
- begin = int(nl[0])
- end = int(nl[1])+1
- for n in range(begin,end):
- print str(number)+','+str(int(areano))+''+str(n).zfill(length)
- # 开始行
- row = 1
- while row < nrows:
- # 开始列
- col = 1
- number = table.cell(row,0).value
- while col < ncols:
- areano = table.cell(0,col).value
- data = table.cell(row,col).value
- if data:
- lists = data.strip().split('、')
- for record in lists:
- rangelists = re.findall(r'\d+-\d+',record.strip())
- if rangelists:
- for r in rangelists:
- nl = r.split('-')
- print_r(nl)
- else:
- print str(number)+','+str(int(areano))+''+str(record.strip())
- col+=1
- row+=1
复制代码 |
|