Python程序节构
#!/usr/bin/python
import ,
def myFunction():
def main():
myFunction()
if __name__=="__main__":
main()
客户端参数
import sys
script = sys.argv[0]
ip = sys.argv[1]
port = sys.argv[2]
print "[+] The script name is: "+script
print "[+] The IP is: "+ip+" and the port is: "+port
关于全局变量global的使用说明
对于Python2而言,对于一个全局变量,你的函数里如果只使用到了它的值,而没有对其赋值(指a = XXX这种写法)的话,就不需要声明global。相反,如果你对其赋了值的话,那么你就需要声明global。声明global的话,就表示你是在向一个全局变量赋值,而不是在向一个局部变量赋值。
多维数组初始化
初始化一个5×3每项为0的数组,multlist = [[0 for col in range(5)] for row in range(3)]
一维数组初始化,[0 for i in range(5)]
列表与字符串相互转换
将字符串转换为列表:mylist=list(mystring)
将列表转换为字符串:mystring=''.join(mylist)
列表尾部添加:list.append()
错误处理
try:
...
except Exception,e:
...
上面"Exception"的位置可以替换为其他变量,如下:
Exception:捕获所有类型的错误
NameError:尝试访问一个没有申明的变量
ZeroDivisionError:除数为0
SyntaxError:语法错误
IndexError:索引超出序列范围
KeyError:请求一个不存在的字典关键字
IOError:输入输出错误(比如你要读的文件不存在)
AttributeError:尝试访问未知的对象属性
ValueError:传给函数的参数类型不正确,比如给int()函数传入字符串型参数
MySQLdb.Error:数据库操作错误
import urllib2
try:
response = urllib2.urlopen('http://www.a.com')
except urllib2.HTTPError,e:
print e.code
continue/break/pass
python中的循环用continue跳出本次循环;用break跳出整个循环;pass是空语句,为了保持程序结构的完整性,它不做任何事情。