还是基于上篇提到的自动回贴的需求,通过抓包可以获取需要post的登录信息,实现登录,之后就要通过Python实现自动回贴,
但是之前没有用过python,为了一个功能要系统的学习一门语言必然浪费很多时间,所以就要速成,根据其他语言基础快速做迁移。
以下便是概要,简单了解基本用法,为接下来的开发做基础。
- # coding=utf-8
- ###############
- #输入输出
- ###############
- # 输出实例
- print 'hello','world'
- # 输入实例
- name = raw_input();
- print 'hello,',name
- #输入时,提示
- name=raw_input('please enter your name:');
- print 'hello',name
- #格式转换,如果输入字母等非数字字符会报错
- birth = int(raw_input('birth:'))
- ###############
- #字符表示
- ###############
- #转义
- print '\\\n\\'
- #防止转义
- print r'\\\n\\'
- #多行内容表示,用三引号包括
- print '''''line1
- line2
- ling2'''
- #布尔值
- print 3>2
- #Unicode表示的字符串用u''表示,转化成UTF-8编码
- print u'ABC'.encode('utf-8')
- print u'中文'.encode('utf-8')
- #文本文件编码
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- ###############
- #格式化
- ###############
- #格式化输出实例
- print 'Hello,%s' % 'world'
- #格式化整数和小数
- print '%2d-%02d' %(3,1)
- print '%.2f' %3.1415926
- #万能格式化%s,可以替代所有格式化
- print '%s-0%s' %(3,1)
- print '%s' %3.1415926
- #对于Unicode字符串,用法完全一样,但最好确保替换的字符串也是Unicode字符串
- print u'Hi,%s' % u'Jason0539'
- #输出百分号%,用双%即可
- print 'growth rate:%d%%' %7
- ###############
- #列表list
- ###############
- #列表list,可变的有序列表
- classmates = ['Jack','Bob','Tracy']
- print classmates
- #len函数获取它的长度
- print len(classmates)
- #获取某个元素,用中括号索引
- print classmates[2]
- #倒数索引,可以倒序获取数组元素
- print classmates[-1]
- #append追加元素到末尾
- classmates.append('Adam')
- print classmates
- #insert插入到指定位置
- classmates.insert(0,'Jason0539')
- print classmates
- #pop 删除末尾元素
- print classmates.pop()
- #pop 加入参数删除指定位置元素
- print classmates.pop(0)
- print classmates
- #元素改变,直接赋值即可
- classmates[0]='Jason0539'
- print classmates
- #list可以嵌套,可用二维索引
- s = ['python','java',['asp','jsp'],'scheme']
- print s[2][1]
- #空列表
- l=[]
- print len(l)
- ###############
- #元组tuple
- ###############
- #不可变有序的数组
- #定义元组
- classmates=('Michael','Bob','Tracy')
- print classmates
- classmates=()
- print classmates
- t=(1,)
- print t
- #注意不能用 t = (1) 来定义, 因为它定义的不是tuple,是 1 这个数,这是因为括号既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。
- #表面上可变的tuple
- t=('a','b',['A','B'])
- print t
- t[2][0]='X'
- t[2][1]='Y'
- print t
- #表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向 ‘a’,就不能改成指向 ‘b’ ,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的
- ###############
- #字典dict
- ###############
- #字典 dict 即键值对组,dict的key必须是不可变对象。
- d={'Michael':95,'Bob':75,'Tracy':85}
- print d['Michael']
- #把数据放入dict的方法,除了初始化时指定外,还可以通过key放入,在这之前,d 必须被声明,否则会报错
- d['Jason']=5390
- print d
- #判断key是否在字典中,区分大小写
- #1.in判断
- print 'Jason' in d
- #2.通过dict提供的get方法判断,如果key不存在,可以返回None,或者返回自己指定的默认value
- print d.get('Thomas')
- print d.get('Thomas',-1)
- #3.要删除一个key,用pop(key)方法,对应的value也会从dict中删除
- d.pop('Jason')
- print d
- ###############
- #集合set
- ###############
- #set和dict类似,也是一组key的集合,但不存储value,没有重复的key
- #要创建一个set,需要提供一个list作为输入集合
- s = set([1,2,3])
- print s
- #重复元素在set中自动被过滤
- s = set([1,2,3,2,3,2,4])
- print s
- #通过add(key)方法可以添加元素到set中,可以重复添加,但没有效果
- s.add(4)
- print s
- #通过remove(key)方法可以删除元素
- s.remove(4)
- print s
- #判断元素是否在set中
- s = 5 in s
- print s
- #set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作
- s1=set([1,2,3])
- s2=set([2,3,4])
- print s1 & s2
- print s1 |s2
- ###############
- #字符串操作,大小写转换
- ###############
- #判断字符串
- s = "jason0539"
- s.isalnum()#所有字符都是数字或者字母
- s.isalpha()#所有字符都是字母
- s.isdigit()#所有字符都是数字
- s.islower()#所有字符都是小写
- s.isupper()#所有字符都是大写
- s.istitle()#所有字符都是首字母大写,像标题
- s.isspace()#所有字符都是空白字符、\t、\n
- #大小写转换
- s.upper()#转大写
- s.lower()#转小写
- s.capitalize()#把第一个字母转化为大写字母,其余小写
- s.title()#把每个单词第一个字母大写,其余小写
作者:jason0539
博客:http://blog.csdn.net/jason0539(转载请说明出处)