if if 要判断的条件: 条件成立时,要做的事 age = 12 ##定义一个变量if age >= 18: ##判断条件print('你已经成年,欢迎进入网吧...')print('~~~~~~~~~~~~~~~')if - else if 要判断的条件: 条件成立时要做的事 else: 条件不成立的时候要做的事 age=18 if age >= 18:print('你已经成年,欢迎进入网吧...') else:print('你未满18岁,请回家写作业')if逻辑运算符and条件1 and 条件2 两个条件同时满足,就返回True 两个条件...
while 条件(): 条件满足时,做的事情1 条件满足时,做的事情2#1.定义一个变量,记录循环次数 i = 1 #2.开始循环 while i <= 3:#循环内执行的动作print('hello python')#处理计数器i += 12.定义死循环,条件永远为真 while True:print('hello python')3.求和:求0-100之间的数字的和 i = 0 #1.定义一个变量记录循环的次数 result = 0 #2.定义结果的变量 while i <= 100: #3.开始循环result += i #4.每次循环都让result和i这个计数...
1:题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 程序源代码: 1 for i in range(1, 5): 2 for j in range(1, 5): 3 for k in range(1, 5): 4 if (i != k) and (i != j) and (j != k): 5 print(i, j, k)View Code 以上实例输出结果为:1 1 2 ...
以下10个练手项目均摘录自一本尚未出版的 Python 神书《500 Lines or Less》,尽管没有出版,但其 review 版已在官方博客放出。实现一个网络爬虫不多说,几百行代码实现高效的网络爬虫, 高效! 项目链接:http://aosabook.org/en/500L/a-web-crawler-with-asyncio-coroutines.htmlPython 实现数据库如何用 Python 实现一个数据库,支持 query,index, transaction, 两三百行代码和对每个函数的讲解。看完你就知道知道数据库原理!...
0 环境 Python版本:3.6.6 操作系统:Mac OS Mojave 10.14.2 1 引言 最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看。 看着看着还会笑?WTF?你在干嘛呢? 没错,她在看美队…… 这男人比我帅?…… 比我有钱?…… 还是比我有腔调?…… 答案很明显,我相信你们的眼睛都是雪亮的。 那问题来了,作为一个男人,怎么能忍?虽然是个明星,虽然是假的,虽然已经挽回不了败局了……那我就送个美队的盾牌给你吧…… 这篇文章不是T...
本文来介绍如何处理driver在多窗口之间切换,想一下这样的场景,在页面A点击一个连接,会触发在新Tab或者新窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来的脚本是操作页面B的元素,这样就造成了找不到元素的报错。本来介绍selenium中switch_to.window()方法来处理这个问题。 测试场景:打开百度新闻(页面A),点击热点新闻中第一个新闻链接(一般是国家领导人的新闻),会在第二个窗口打开这个新闻的具体详情页(...
继续来介绍一个Selenium中页面title断言方法。 相关脚本代码如下: # coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get(https://www.baidu.com) time.sleep(1) # 方法一 try: assert u"百度一下" in driver.title print (Assertion test pass.) except Exception as e: print (Assertion test fail., format(e)) # 方法二 if u"百度一...
本文介绍如何通过Selenium方法来获取某一个元素的text属性值。在很多自动化测试脚本中,需要多次获取元素的text值,拿过来进行对比和匹配。例如,在一个登陆界面,如果不输入用户名和密码,直接点击登录,肯定会有相关错误提醒。这个错误,我们需要通过selenium抓取出来,和需求说明文档中的描述去进行匹配,如果匹配,测试成功,否则失败。 这里用百度登录举例: 需要通过Selenium脚本去自动判断是否显示错误文字“请您填写手机...
15-1.识别下列字符串 :“bat ”、“bit ”、“but ”、“hat ”、“hit” 或 “hut ”1 import re 2 from random import choice 3 4 5 strtuple = (bat, bit, but, hat, hit, hut) 6 patt = [bh][aiu]t 7 m = re.search(patt, choice(strtuple)) 8 print(m.group())15-2.匹配用一个空格分隔的任意一对单词 ,比如名和姓1 import re 2 from random import choice 3 4 5 strtuple = (Bei Liu, Yu Guan, Fei Zhang) 6 patt = [A-...
a={'001':{'name':'张三','age':18,'address':'北京'},'002':{'name':'张二','age':28,'address':'上海'},'003':{'name':'张大','age':38,'address':'北京'},'004':{'name':'张四','age':28,'address':'上海'},'005':{'name':'张六','age':39,'address':'北京'} }class StudentAdmin():@staticmethoddef write():f=open('a.txt','w')f.write(str(a))f.close()@staticmethoddef read():f=open('a.txt','r')c=f.read()f.close()retur...
在前面的基础篇的最后一篇,我们用到了输入字符和点击按钮这样的操作。用send_keys()来输入字符串到文本输入框这样的页面元素,用click()来点击页面上支持点击的元素。有时候,我们需要清除一个文本输入框内的文字,然后重新输入新的字符串,那边清除这个方法如何实现呢。 调用webdriever中clear()方法: 相关代码如下,为了演示测试效果,我们运行完脚本,不关闭浏览器: # coding=utf-8 from selenium import webdriver driver = ...
前面介绍了,XPath, id , class , link text, partial link text, tag name, name 七大元素定位方法,本文介绍webdriver支持的最后一个方法:by_css。css和XPath类似,也需要掌握一些语法,才能写出正确的,完整的css选择表达式。相关w3c介绍,请点击这里。 相关脚本代码如下: # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome()driver.maximize_window()driver.implicitly_wait(6) driver.get("https:/...
本文介绍如何调用webdriver中刷新页面的方法。 相关脚本代码如下: # coding=utf-8import timefrom selenium import webdriver driver = webdriver.Chrome()driver.maximize_window()driver.implicitly_wait(6) driver.get("https://www.baidu.com")time.sleep(2)try: driver.refresh() # 刷新方法 refresh print (test pass: refresh successful)except Exception as e: print ("Exception found", format(e))driver.qui...
总结:高阶函数以及匿名函数之间的配合使用from functools import reduce #模块一:lambda和filter的结合使用 #lt = [1,2,3,4,5,6,7,8,9] --> [3,6,9]] lt = [1,2,3,4,5,6,7,8,9] print(list(filter(lambda x:x%3==0,lt)))#模块二:lambda和map的结合使用 #容器/序列对象:range对象 mo=map(lambda x:x**2,range(5)) print(list(mo))#模块三: 在模块二的基础上扩展功能:range(10) 过滤以后保留的数据范围为:(5,50)之间 mo=map(...
案例五:求两个列表元素的和,返回新列表lt1 = [1,2,3,4]lt2 = [5,6]效果:[6,8,10,12]lt1=[1,2,3,4] lt2=[5,6] print(list(map(lambda x,y:x+y,lt1,lt2)))案例六:求字符串中每个单词的长度效果:[7,2,8]content = Welcome To ShangHai#切割是关键,因为一切就是列表了,按照什么切呢?直接split()切content=Welcome To ShangHai word_list=content.split() mo=map(len,word_list) print(list(mo),type(mo))