测试自动化学习3-python3简单操作

1.列表操作

stu = []
stus.append('lili') #在list的末尾增加一个元素 stus.insert(9,'yjk') #在指定的位置插入元素,

print('单个取,第一个位置元素',stus[0])
print('最后一个元素',stus[-1])

stus[lili] = 'hanmeimei'

stus.pop(0)    #默认删除list里面最后一个元素
del stus[0]    #删除指定的位置的元素
stus.remove("hanmeimei")    #删除指定的元素,如果list里面有多个一样的元素,那么就只会删掉一个

其它常用方法

count = stus.count('aaa')    #某个元素在list里面的数量
stus.reverse()    #反转
stus.sort(reverse=True) #倒序排序
stus.sort()    #排序
result = stus.index('hanmeimei')    #找某个元素下标

#多维数组,list嵌套
nums = [1,2,3,4,['a','b','c','d',['test','dev','pre']]]
print(nums[-1][-1][0])    #打印出test
 

 

 

2.字典

增加元素

d = {}
d['name'] = 'ppa'
d['age'] =  18
d.setdefault('class','szz')    #设置默认 class:szz

d['name']='abc'

print( d['name'] )
print( d1.get('money',0) )
#取一个不存在的
print(d.keys()) #取到字典里面所有的key
print(d.values()) #取到字典里面所有的value
#查看某个值是否在字典的 key 里面
if xxx in d.keys():
if xxx in d:

d.pop('name')
del d['name']

循环取值

#取 key、value
for k,v in users.items():
    print('%s===>%s'%(k,v))
    users[k] = '%s_%s' % (k, v)

#如果直接循环字典,则是取 key
for k in users:
    value = users[k]
    users[k] = '%s_%s'%(k,value)
print(users)

 

3.逻辑操作

while 和 else 可以连用,实现计数完成后,执行某个操作

while count<3:
    count+=1
    ...
    ...
else:
    print('错误次数已经用尽')

 如果条件成立,不做任何操作

if xx:
    pass

 

4.字符串操作

s = s.strip()    #不传参则默认去掉字符串两边的空格和换行符,传参则去除传入的字符串,s.lstrip()  s.rstrip()去除左右
#将字符串切割成list
users='abc,xiaozi,xiaobai,xiaohei,xiaoming,xiaolan'
print(users.split(','))

#将list转成字符串
li = ['abc', 'xiaozi', 'xiaobai', 'xiaohei', 'xiaoming', 'xiaolan']
li_str = ','.join(li)


s.count('c')    #某个字符串出现次数
s.index('d')    #查看出现位置
s.find('d')
s.capitalize()    #首字母大写
s.upper()    #全部大写
s.lower()    #全部小写
s.replace("c","C")    #替换
'abc.jpg'.endswith('.jpg')    #判断以 xx 结尾
'abc'.startswith('c')    #判断以 xx 开头
' '.isspace()    #判断是否是空格
'123abc'.isalnum()    #没有%%##@特殊字符串就返回true
'abc'.isalpha()    #不是数字、不是特殊符号就返回true
'12.34'.isdigit()    #判断是否为整数
'11111'.zfill(5)    #字符串长度不够的话,自动给你补零

#随机字符串和数字
import random
import string

print(string.ascii_letters)    #大小写字母
print(string.ascii_lowercase)    #小写字母
print(string.ascii_uppercase)    #大写字母
print(string.digits)    #数字

low = ''.join(random.sample(string.ascii_lowercase,5))
num = ''.join(random.sample(string.digits,5))
user = low + num
low = ''.join(random.sample(string.ascii_lowercase,5))
num = ''.join(random.sample(string.digits,5))
passwd = low + num
print(user + ',' + passwd)

 

5.文件操作


import random
import string
import os

def
File2Dict(filename): """直接传入文件名 'users.txt',文件为一行行 username,password 的结构,读取成 filedict 字典""" filedict = {} with open(filename, 'r+') as f: for i in f.readlines(): filedict[i.split(',')[0]] = i.split(',')[1].replace('\n', '') return filedict def KeyValue2File(key,value,filename): """传入 'key','value','filename' 将key、value写入文件最末行""" with open(filename, 'a+') as f: f.write('%s,%s\n'%(key.lower(),value)) def RangdomUser(): if os.path.isfile('users.txt'): while True: low = ''.join(random.sample(string.ascii_lowercase, 5)) num = ''.join(random.sample(string.digits, 5)) user = low + num if user not in File2Dict('users.txt').keys(): break else: continue else: low = ''.join(random.sample(string.ascii_lowercase, 5)) num = ''.join(random.sample(string.digits, 5)) user = low + num low = ''.join(random.sample(string.ascii_lowercase, 5)) num = ''.join(random.sample(string.digits, 5)) passwd = low + num return [user,passwd]

 

posted @ 2019-04-14 09:43  fatenet  阅读(250)  评论(0编辑  收藏  举报