Archive

‘Programmer’ 分类存档

Python Simplegui Images

Simplegui中的图片加载功能不是特别熟悉,每次用都要查文档,比较麻烦,所以我把解释放到这里以备复习:

import simplegui
 
def draw_handler(canvas):
    canvas.draw_image(image, (1521 / 2, 1818 / 2), (1521, 1818), (200, 200), (100, 100))
#(1521 / 2, 1818 / 2):图片的中心位置
#(1521, 1818):图片的实际大小
#(200, 200):画布的中心位置
#(100, 100):缩放到100X100,这个值跟画布大小有关
 
image = simplegui.load_image('http://commondatastorage.googleapis.com/codeskulptor-assets/gutenberg.jpg')
 
frame = simplegui.create_frame('Testing', 600, 600)
#画布的尺寸600X600
frame.set_draw_handler(draw_handler)
frame.start()

Python Classes 类的概念

参加《An Introduction to Interactive Programming in Python》有一段时间了,快结课了,这是第5期,前几周都没总结,到了week 6,发现听着有点困难,到了我最不理解的“类”这块,所以把老师讲的案例拿出来,加了一些说明,强加记忆吧,日后用多了,希望能有更新的理解,然后再更新此文章
PS:大学时JAVA就没学好,特别是继承和类这块。。。

class Ball:
#类的名字首字母大写
    def __init__(self, pos, rad):
    #init是初始方法,这个初始函数不需要任何返回值
        self.position = pos
        self.radius = rad
    
    def get_position(self):
        return self.position

b = Ball([0,0], 10)
#b作为类Ball的一个对象,执行这个时,除了传递[0,0]和10外,还会传递b本身,其实b就是self

print b.get_position()
#b作为对象调用Ball类中的方法get_position

CRT + Python for “crt.Screen.Send”

这个小脚本很简单,关键如何使用crt.Screen.Send和变量一起应用,需求是新建14个tunnel,并shut;然后在对这些tunnel进行no shut
脚本实现的流:

1. 配置tunnel-te 1582-1594
2. shut这些tunnel,并提交配置
3. 等待30s,收集一些基本的信息
4. 对这些tunnel进行no shut,并提交
5. 等待30s,再次收集同样的命令
6. 上面操作循环10000次
完整阅读

Accelerated Upgrade Tool for Cisco IOS-XR

AUT是一个脚本,可以实现自动化安装IOS-XR,支持Turboboot,不过看了下AUT的介绍,暂时感觉不出用了这个脚本后会省多少功夫

https://www.youtube.com/watch?v=2DgXPi0Ink4

这个脚本不能在windows下调用,MAC,linux和类Unix系统都可以用
因为脚本用到pexpect模块,这个模块是纯的python模块,依赖pty 模块,pty模块是任何Posix系统标准库的一部分
下面是使用前的一些基本步骤,有兴趣的童鞋可以试试这个脚本

1. 下载后执行,有报错

x-mac:accelerated upgrade frank$ ./accelerated_upgrade -h
-bash: ./accelerated_upgrade: /router/bin/python: bad interpreter: No such file or directory

完整阅读

Taking a Vacation: Paying Up

下面是”taking a vacation”中最后部分“Paying Up”,下面是脚本流程:

1. 首先用函数hotel_cost()算出宾馆总费用bill
2. 由于手头紧,所以只付一半钱,也就是bill/2;另一半分期付款,并产生税费,由函数add_monthly_interest()计算得出
3. 第一次调用make_payment(),算出交了一半的钱,扣除利息,还剩下多少
4. 第二次调用make_payment(),再付100元,扣除利息,还剩下多少

注:这里可以把利息的计算公式和部分程序优化一下,就可以用于非常简单但很实用的贷款利息计算工具。
完整阅读

blonde teen swallows load.xxx videos