是否有一个选项如何从一行中包含例如3个相等字符的字符串列表中过滤这些字符串?我创建了一个可以做到这一点的方法,但我很好奇是否有更多的pythonic方式或更高效或更简单的方法来做到这一点.
list_of_strings = []
def check_3_in_row(string):
for ch in set(string):
if ch*3 in string:
return True
return False
new_list = [x for x in list_of_strings if check_3_in_row(x)]
Run Code Online (Sandbox Code Playgroud)
编辑:我刚刚找到一个解决方案:
new_list = [x for x in set(keywords) if any(ch*3 in x for ch in x)]
Run Code Online (Sandbox Code Playgroud)
但我不确定哪种方式更快 - regexp或者这个.
是否可以通过br标签分割标签中的文本?
我有这个标签内容: [u'+420 777 593 531', <br/>, u'+420 776 593 531', <br/>, u'+420 775 593 531']
我想只得到数字.有什么建议吗?
编辑:
[x for x in dt.find_next_sibling('dd').contents if x!=' <br/>']
Run Code Online (Sandbox Code Playgroud)
根本不起作用.
我正在尝试使用Selenium解析一些html.问题是,如果类名包含空格,则会引发错误.
这是我要搜索的标签: <p class="p0 ng-binding">text</p>
我试过这两个选项:
result.find_element_by_class_name('departure').find_element_by_css_selector('p.p0 ng-binding').text
result.find_element_by_class_name('departure').find_element_by_class_name('p0 ng-binding').text
>>> selenium.common.exceptions.InvalidSelectorException: Message: The given selector p0 ng-binding is either invalid or does not result in a WebElement. The following error occurred:
InvalidSelectorError: Compound class names not permitted
Run Code Online (Sandbox Code Playgroud)
有人可以给我一个暗示吗?
是否可以获取某个类或对象的所有属性?我有一个具有许多属性的类,我想创建一个函数/方法,它返回对象的所有属性等于 None 。
由于这些属性有很多,我必须避免将它们全部写入函数中。
像这样的东西:
def get_all_empty_attributes(self):
for attr in self.attributes.names:
if self.attr==None:
yield attr
Run Code Online (Sandbox Code Playgroud)
是否可以使用内置函数来完成?
如何定义OneToOne相同的关系Model?
我有一个名为 的模型Order,可以与另一个模型配对Order。现在我正在尝试找出如何处理这种关系的模型。
我的想法:
class Order(models.Model):
paired_order = models.OneToOneField(self)
Run Code Online (Sandbox Code Playgroud)
或者:
class Pairing(models.Model):
order1 = models.ForeignKey(Order, related_name='pairing')
order2 = models.ForeignKey(Order, related_name='pairing')
Run Code Online (Sandbox Code Playgroud)
你怎么认为?哪个更有效率?
我想要简单地调用配对的。所以我会做类似的事情:
order.paired_order
Run Code Online (Sandbox Code Playgroud)
或者:
order.pairing.paired
Run Code Online (Sandbox Code Playgroud)
我希望这种关系是对称的,因此对于每对订单,我将其称为相同的事物并获得配对订单。
配对模型将是一个很好的解决方案,因为我可以向这种关系添加额外的信息,但是有一个问题是我必须检测它是哪个顺序,所以我无法调用,order.pairing.order1因为我不知道我是否不是调用相同的命令。
编辑:
>>> from _app import models
>>> order1 = models.Order(flight_number="xxx")
>>> order2 = models.Order(flight_number="yyy", paired_order=order1)
>>> order1.paired_order.flight_number
Run Code Online (Sandbox Code Playgroud)
退货None object has not ....
问题是,当我将 order1 设置为 order2 的配对订单时,我想要相反方向的相同内容。所以order1.paired_order = order2也这样做吧order2.paired_order = order1。
用户上载图像时,图像存储在media项目目录内的文件夹中。问题在于,当他们希望在网站上看到它时,nginx 403 Forbidden对于大约3 Mb以上的图像返回错误。
我设定nginx.conf client_max_body_size为8M
http {
##
# Basic Settings
##
client_max_body_size 8M;
...
Run Code Online (Sandbox Code Playgroud)
并且已经更改了内存大小settings.py:
FILE_UPLOAD_MAX_MEMORY_SIZE = 8388608
Run Code Online (Sandbox Code Playgroud)
当我上传3 MB以下的图像时,没有问题,如果我上传3 MB以上的图像,则可以在media文件夹中看到它,但是会出现错误,而不是提供图像:
GET https://example.com/media/images/dom.jpg 403 (Forbidden)
Run Code Online (Sandbox Code Playgroud)
我注意到3 MB以下的文件具有不同的权限:
-rw-r--r-- 1 django www-data 4962 Jul 19 19:51 61682_3995232_IMG_01_0000.jpg.150x84_q85_crop.jpg
-rw-r--r-- 1 django www-data 1358541 Jul 20 09:32 byt.jpg
-rw------- 1 django www-data 3352841 Jul 20 09:32 dom.jpg
-rw-r--r-- 1 django www-data 5478 Jul 19 20:10 downloasd.jpeg.150x84_q85_crop.jpg
-rw-r--r-- 1 django www-data 3225 Jul …Run Code Online (Sandbox Code Playgroud) 我对机器学习很陌生。我试图创建一个模型来预测数字是否为偶数。
我使用了这个代码https://machinelearningmastery.com/tutorial-first-neural-network-python-keras/ 我根据我的需要改变了它。
问题是大约有 50% 的成功率等于随机。
你知道怎么做才能让它发挥作用吗?
from keras.models import Sequential
from keras.layers import Dense
import numpy
# fix random seed for reproducibility
seed = 7
numpy.random.seed(seed)
X = list(range(1000))
Y = [1,0]*500
# create model
model = Sequential()
model.add(Dense(12, input_dim=1, init='uniform', activation='relu'))
model.add(Dense(8, init='uniform', activation='relu'))
model.add(Dense(1, init='uniform', activation='sigmoid'))
# Compile model
model.compile(loss='mean_squared_error', optimizer='adam', metrics=['accuracy'])
# Fit the model
model.fit(X, Y, epochs=150, batch_size=10, verbose=2)
# calculate predictions
predictions = model.predict(X)
# round predictions
rounded = [round(x[0])for x in predictions] …Run Code Online (Sandbox Code Playgroud) python中是否有内置函数返回两个列表中最长公共子序列的长度?
a=[1,2,6,5,4,8]
b=[2,1,6,5,4,4]
print a.llcs(b)
>>> 3
Run Code Online (Sandbox Code Playgroud)
我试图找到最长的常见子序列,然后得到它的长度,但我认为必须有一个更好的解决方案.
我正在尝试解析一个html文件。这个html 中有许多嵌套的 div 。我想获得所有子 div,但不是孙子等。
这是一个模式:
<div class='main_div'>
<div class='child_1'>
<div class='grandchild_1'></div>
</div>
<div class='child_2'>
...
...
</div>
Run Code Online (Sandbox Code Playgroud)
所以我正在寻找的命令将返回 2 个元素 - 类是“child_1”和“child_2”的 div。
是否可以?
我尝试使用,main_div.find_elements_by_tag_name('div')但它返回了 div 中的所有嵌套 div。
是否可以根据当前对象的值更改行的颜色?
就我而言,我有一个table从模型创建的Job。该Job具有的属性delivery。job.delivery例如,如果是“已交付”,我想将行的颜色更改为红色。
我想到的唯一一件事就是使用,JQuery但我不确定这是否是一种矫枉过正。
class MyOrdersTable(tables.Table):
edit_entries = tables.TemplateColumn(
'{% if not record.translator %}<a href="/jobs/update/{{record.id}}">Edit Order</a>{% else %} Can\'t edit order, translator has been assigned. {% endif %}')
price = tables.Column(default='Not Yet',verbose_name='Price')
translator = tables.Column(default='Not Yet',verbose_name='Translator')
progress = tables.TemplateColumn('{{record.delivery.get_status_display}}',verbose_name='Progress')
class Meta:
model = Job
attrs = {'class': 'table table-striped table-bordered table-hover', 'width': '70%'}
fields = (
'translator', 'short_description', 'language_from', 'language_to', 'level', 'created', 'modified', 'price',
'progress','edit_entries')
empty_text = """You haven't …Run Code Online (Sandbox Code Playgroud) python ×9
django ×3
html ×2
list ×2
parsing ×2
selenium ×2
text ×2
attributes ×1
char ×1
class ×1
django-media ×1
filter ×1
html-table ×1
keras ×1
newline ×1
nginx ×1
object ×1
string ×1
tags ×1
tensorflow ×1