本人在python自动化测试编写脚本时遇到的一些与python编程有关的问题 总结记录一下【持续更新】

在学校里学过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 某个单元格的值

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值