最新自动化快速上手--python(25)--反射(1),字节跳动+阿里+华为+腾讯等大厂Python面试题

如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

o = getattr(test01, ‘numbe’)

print(o)

i = getattr(test01, ‘numbe’,‘不存在’)

print(i)

看这两个例子,一个用了默认值,一个没用默认值,没用默认值的且函数方法错了,那么运行之后就会告诉你这样的一个错误:

AttributeError: module ‘test01’ has no attribute ‘numbe’

那么用了默认值的,则会告诉你"不存在"。这样的一个字样

在学习的过程中,你会看到不一样的教程,getattr反射的是某类的属性,也只能是属性,要是反射其他的就会报错。但其实不然,都可以进行反射,因为函数方法也可以是属性,就比如上述例子中。

那么问题来了,为什么要学这个。我们不是自动化测试吗?

if brower_type == 0 or brower_type == BrowserDriver.Chrome:

driver = webdriver.Chrome()

elif brower_type == 1 or brower_type == BrowserDriver.Firefox:

driver = webdriver.Firefox()

elif brower_type == 2 or brower_type == BrowserDriver.Ie:

driver = webdriver.Ie()

elif brower_type == 3 or brower_type == BrowserDriver.Edge:

driver = webdriver.Edge()

上述代码中,你是否也有这么写过呢,用很多的if-elif-else来判断一个浏览器,或者定位方法。这样写难道自己觉得不多于吗,重复写了很多代码。

那么如何优化呢?答案就是getattr反射。看代码:

–>>>清安<<<—

from selenium import webdriver

def driver_(option_):

che = getattr(webdriver, option_)()

return che

class Browser:

def init(self,option_):

self.driver = driver_(option_)

def open(self,url):

self.driver.get(url)

这是主代码的方法,写的比较简单,但是一个实实在在的例子。我可以根据传入不同的值来打开不同的浏览器,且只有两行代码。再比较上述的写了一行又一行的代码,麻烦且重复。

getattr(webdriver, option_)()等价于webdriver.option_()。这里的option_就是需要传入的驱动。

那么如何传值到主代码,且调用主代码中类的函数方法呢。

from test01 import Browser

driver = Browser(‘Chrome’)

driver.open(‘https://baidu.com’)

这里就很方便了,我在Browser中传入火狐的,IE的那么就会在对应的浏览器中打开对应的百度链接。

好了,对于getattr的运用介绍到这,你可以在元素定位的方法删同样运用起来,因为selenium中八大元素定位,如果你还像if-elif-else一样写,那就太磨人了。

hasattr

=======

以下是源文件介绍:

def hasattr(*args, **kwargs): # real signature unknown

“”"

Return whether the object has an attribute with the given name.

This is done by calling getattr(obj, name) and catching AttributeError.

“”"

pass

返回对象是否具有具有给定名称的属性,这是通过调用  getattr(obj,name) 并捕获AttributeError来完成的。

看到这,你大可以理解为我不能直接用getattr吗,还加这个。当然可以直接用getattr,这里相当于增加了一个保险装置。

import requests

class BaseRequest:

req = requests.session()

def get(self,url):

resp = self.req.get(url)

print(“这是一个经过反射的get请求”)

return resp

def post(self,url):

resp = self.req.post(url)

print(“这是一个经过反射的post请求”)

return resp

最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

👉实战案例👈

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值