python attrs_一直比较疑惑python中关于attrs的问题

python attrs_一直比较疑惑python中关于attrs的问题今天看一个爬虫代码的时候遇到如下代码:links=getLinks(“/wiki/Python_(programming_language)”)print(links)while(len(links)>0):forlinkinlinks:print(“——————-“)historyIPs=getHistoryIPs(link.attrs[“href…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

今天看一个爬虫代码的时候遇到如下代码:

links = getLinks(“/wiki/Python_(programming_language)”)

print(links)

while(len(links) > 0):

for link in links:

print(“——————-“)

historyIPs = getHistoryIPs(link.attrs[“href”])

for historyIP in historyIPs:

print(historyIP)

newLink = links[random.randint(0, len(links)-1)].attrs[“href”]

links = getLinks(newLink)

像这里的link.attrs中的attrs我了解到是从得到的链接里面找到相对应的属性。

但像这样的话

>>> import attr

>>> @attr.s

… class C(object):

… x = attr.ib(default=42)

… y = attr.ib(default=attr.Factory(list))

… def hard_math(self, z):

… return self.x * self.y * z

>>> i = C(x=1, y=2)

>>> i

C(x=1, y=2)

>>> i.hard_math(3)

6

>>> i == C(1, 2)

True

>>> i != C(2, 1)

True

>>> attr.asdict(i)

{‘y’: 2, ‘x’: 1}

>>> C()

C(x=42, y=[])

>>> C2 = attr.make_class(“C2”, [“a”, “b”])

>>> C2(“foo”, “bar”)

C2(a=’foo’, b=’bar’)

这里的attrs有代表什么呐?

作为一个初学者会很疑惑这个attrs到底该如何去运用呐,又如何去分辨呐。我好像走进了死胡同。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/180824.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java生成license_使用truelicense实现用于JAVA工程license机制(包括license生成和验证)…

    java生成license_使用truelicense实现用于JAVA工程license机制(包括license生成和验证)…开发的软件产品在交付使用的时候,往往会授权一段时间的试用期,这个时候license就派上用场了。不同于在代码中直接加上时间约束,需要重新授权的时候使用license可以避免修改源码,改动部署,授权方直接生成一个新的license发送给使用方替换掉原来的license文件即可。下面将讲述使用truelicense来实现license的生成和使用。Truelicense是一个开源的证书管理引擎,详细介…

  • 微元素——答题

    微元素——答题微元素——答题微元素每日任务,答题

  • bindingNavigator的使用[通俗易懂]

    bindingNavigator的使用[通俗易懂]http://blog.163.com/qqabc20082006@126/blog/static/229285252009718103810534/

  • 【C++】容器类_容器迭代器

    【C++】容器类_容器迭代器C++中的容器类对比起其它语言,无论是《【Python】容器类》(点击打开链接),还是《【Java】Java中的Collections类——Java中升级版的数据结构》(点击打开链接)的容器类都没有C++中的容器复杂。且不说C++像Java一样,不能如同Python与php的数组,天生就是可变,不定长,越界就出现问题。C++中的容器,虽然与Java一样同样有List与Map,但是,其提供的封装方法

  • 怎么把浏览器ua改成PC就可以了_手机自带浏览器怎么改成电脑版

    怎么把浏览器ua改成PC就可以了_手机自带浏览器怎么改成电脑版第一种方法:修改浏览器的快捷方式右击桌面上的Chrome浏览器图标,在弹出的右键菜单中选择“复制”,复制一个图标副本到桌面。右击该副本,选择“属性”,打开相应的对话框,在“目标”文本框的字符后面添加

  • Java字符串分割方法split()的功能以及使用方法的详细介绍!

    Java字符串分割方法split()的功能以及使用方法的详细介绍!在Java的学习中经常会遇到按照自己的理想情况分割字符串,并根据分割后的结果进行后续操作的问题。对于这些问题就可以使用Java提供的split()方法进而实现,下面详细的介绍它的功能以及使用方法。一、功能    Java提供的String.split()方法可以根据自己的理想情况(自己想要的结果),将目标字符串进行分割从而对分割后的结果进行进一步的操作。用一个例子来说明它的功能:

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号