社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  heemayl  »  全部回复
回复总数  4
5 年前
回复了 heemayl 创建的主题 » Selenium/Python TypeError:“WebElement”对象不可iterable

通过以下方法获得单个元素(第一个元素):

driver.find_element_by_xpath("/html/body/div")

这显然是不可接受的。

对于多个元素,即要获得iterable,请使用:

driver.find_elements_by_xpath("/html/body/div")

注意 s element .

还可以查看 documentation

4 年前
回复了 heemayl 创建的主题 » Python:将列表中的两个项添加为key:pair to dictionary

您应该为列表中的偶数个元素编写代码,但是当您有奇数个元素时,索引处的元素 i+1 不存在,因此错误。

你也可以 zip 在同一个迭代器上以成对方式使用连续值,并理解dict:

In [239]: lst = [1, 2, 3, 4, 5, 6]                                                                                                                                                                          

In [240]: {k: v for k, v in zip(*[iter(l)] * 2)}                                                                                                                                                            
Out[240]: {1: 2, 3: 4, 5: 6}

对于奇数个元素,可以使用 itertools.zip_longest 用一个 fillvalue 要填写缺少的最后一个值:

In [241]: lst = [1, 2, 3, 4, 5, 6, 7]                                                                                                                                                                       

In [242]: {k: v for k, v in itertools.zip_longest(*[iter(l)] * 2, fillvalue=None)}                                                                                                                          
Out[242]: {1: 2, 3: 4, 5: 6, 7: None}
4 年前
回复了 heemayl 创建的主题 » 如何遍历django模型字段,并根据条件添加值

首先是错误: <Model>._meta.get_fields 是方法,而不是属性;因此您需要:

for f in obj._meta.get_fields()[3:]:
# Note the call:             ^^

现在,你的设计似乎不对。你所做的基本上是要求与 Station 模型所以,创建一个 车站 带e.g.a.的模型 name 包含站点名称的字段(以及其他需要的字段)。还要确保你考虑到与 Line 模型清晰;乍一看,对我来说,它看起来像一个多对多。

4 年前
回复了 heemayl 创建的主题 » 简单的python正则表达式不能按预期工作

.*? 非贪婪 也就是说,它将匹配最小的子字符串,您需要 贪婪的 版本,即 .* (匹配最长的子字符串)对于后者:

In [1143]: a = '#232 - Hello There'                                                                                                                                                                         

In [1144]: re.findall('#(.*?) - (.*?)', a)                                                                                                                                                                  
Out[1144]: [('232', '')]

In [1145]: re.findall('#(.*?) - (.*)', a)                                                                                                                                                                   
Out[1145]: [('232', 'Hello There')]

但你应该用 str 处理此类简单案例的方法,例如使用 str.split 打开拆分 - 以下内容:

In [1146]: a.split(' - ')                                                                                                                                                                      
Out[1146]: ['#232', 'Hello There']

str.partition - 切片:

In [1147]: a.partition(' - ')[::2]                                                                                                                                                                          
Out[1147]: ('#232', 'Hello There')