在学校里学过C语言、C#、Java
没有系统地学习过Python 但是有一些编程基础 所以就直接上手编写python脚本了
因此,在这个过程中,学习了一段时间后,还是出现了一些和python编程有关的疑点和问题,现在在这里总结记录一下!
1.从.txt文件中读取信息
一些网站信息(比如url、元素id等等)读取:
def get_web_info(path):
web_info={} #定义一个空的字典
web_file=open(path) #打开一个路径为path的txt文件 如果打印的话 会出现txt文件里的所有内容
for line in web_file: #一行一行的遍历txt文件中的内容
result=[ele.strip()for ele in line.split('=')] #列表解析以'='符号为分隔,将遍历的一行的内容放在一个数组里,每一个result的形式都是[ , ]
web_info.update(dict([result])) #将每次的result生成的列表,生成一个新字典,更新一开始定义的空字典web_info
return web_info
python 编程知识点:
①dict()是创造一个新的字典 可以把列表放进去 但是要在原有的列表名外面加上'[]'符号,否则会报错
②update()是字典的一个方法,添加字典里的内容,括号里放的还是一个字典
2.从excel文件中读取信息(用例大多数都是写在excel中):
class XlUserinfo(object):
def __init__(self,index, path=''):
self.xl=xlrd.open_workbook(path)
self.sheet=self.xl.sheet_by_index(index)
#浮点型转为int类型字符串
def floattostr(self, val):
if isinstance(val, float):
val = str(int(val))
return val
def get_sheet_info(self):
listkey = ['uname', 'pwd']
infolist = []
for row in range(1, self.sheet.nrows):
info = [ self.floattostr(val) for val in self.sheet.row_values(row)]
tmp = zip(listkey, info)
infolist.append(dict(tmp))
return infolist
①class类,方法上和Java差不多,Java的类下面会跟上一个和class类名相同的构造方法,而Python中会跟上一个初始方法init,这个方法在调用的时候是不需要特别的去声明的,既然有了class类的对象,那么这个init方法直接就被调用了,同时,python中想要使用一个类,不需要像Java一样去new,直接'='就可以了
②两个列表的zip()方法
可以将两个列表组合一起dict生成一个新的字典,比如代码中的listkey=['uname','pwd']和(假设一个result)result=[xx@qq.com,abc123],如果dict(zip(listkey,result))注意 一定要dict()才能生成一个新字典哦!,结果就是{uname:xx@qq.com,pwd:abc123}
③列表的append方法:在列表里面添加新内容,可以把好几个字典一起放在同一个列表中
④读取excel用到的:
首先必须import xlrd
Ⅰ data=xlrd.xlrd.open_workbook(path)
Ⅱ sheet=data.sheet_by_index(index)
Ⅲ sheet.row_values(i) 第(i+1)行的所有内容
Ⅳ sheet.col_values(j) 第(j+1)列的所有内容
Ⅴ sheet.nrows 行数 sheet.ncols 列数
Ⅵ sheet.cell(i,j).value 某个单元格的值