我有两个不同的模型引用 django User,即Recruiter和Userprofile.
我有一个接收User对象作为参数的函数。我需要检查哪些相关对象存在并相应地采取一些措施。我正在使用嵌套的 try-catch 来执行此操作:
def some_function(user, ....):
...
try:
profile = user.userprofile
profile.profile_pic.save('{0}_social.jpg'.format(user.username))
profile.save()
except:
try:
recruiter = user.recruiter
recruiter.cover_pic.save('{0}_social.jpg'.format(user.username))
recruiter.save()
except:
pass
Run Code Online (Sandbox Code Playgroud)
有没有更好/更优雅的方式来做到这一点?
编辑:考虑的模型如下
class Recruiter(models.Model):
user = models.OneToOneField(User, unique=True, related_name='recruiter')
...
class UserProfile(models.Model):
user = models.OneToOneField(User, unique=True, related_name='userprofile')
...
Run Code Online (Sandbox Code Playgroud) 我试图从价值的字典中获得前20个条目.我使用orderedDict按值对条目进行排序.但是当我试图从orderedDict中删除一个条目时(为了维持一个恒定长度的orderedDict,即20),它不会发生.
我写了以下代码:
while linecount>0:
line=images.readline().split()
#compute "score" for each line
if (len(result)<20):
result.update({(str(line)):score})
else:
if(len(result)==20):
result=OrderedDict(sorted(result.items(), key=lambda t: t[1]))
if(result.items()[0][1]<score):
del result.items()[0]
temp=str(line)
result.update({temp:score})
Run Code Online (Sandbox Code Playgroud)
但删除/删除不会发生在步骤:
del result.items()[0]
Run Code Online (Sandbox Code Playgroud)
并且一旦达到该值(21),结果的长度保持为21
我做错了什么,我怎么办呢?
我想ssh到EC2实例而不使用apem文件,ssh user@dns而不是ssh -i file.pem user@dns.我做了以下事情:
cp /location/of/.pem ~/.ssh/.pem
ssh-add ~/.pem
Run Code Online (Sandbox Code Playgroud)
这可以工作,但直到我关闭系统.
我还添加了.pem文件,~/.ssh/config但它没有用.谢谢
我有一系列哈希,id是哈希中的关键之一.我想根据给定的ID值顺序对数组元素进行排序.
假设我的数组(size = 5)是:
[{"id"=>1. ...}, {"id"=>4. ...}, {"id"=>9. ...}, {"id"=>2. ...}, {"id"=>7. ...}]
Run Code Online (Sandbox Code Playgroud)
我想对数组元素进行排序,使得它们id的顺序如下:
[1,3,5,7,9,2,4,6,8,10]
Run Code Online (Sandbox Code Playgroud)
所以预期的结果是:
[{'id' => 1},{'id' => 7},{'id' => 9},{'id' => 2},{'id' => 4}]
Run Code Online (Sandbox Code Playgroud) 假设我有一个清单[1,2,3,4,5].现在我想传递这个列表的元素,从第3个元素开始到方法.
即我想调用:
myfunction([3,4,5])
Run Code Online (Sandbox Code Playgroud)
我怎么能在python中做到这一点.尝试传球mylist[2],但看起来并没有那么好用.
我有一系列形式的哈希:
[{"status"=>"Unshipped", "city"=>"thane", "buyer_name"=>"abc", "name"=>"abc def", "countryCode"=>"IN", "payment_method"=>"COD", "order_type"=>"StandardOrder", "y_id"=>"r123", "phone"=>"12345", "state"=>"Maharashtra", "service"=>"Expedited", "address_1"=>"abc xyz", "address_2"=>"yyyy", "postalCode"=>"400607", "shipped_by_y"=>"false", "channel"=>"MFN", "amout"=>"350.00"}, {"status"=>"Unshipped", "city"=>"Chembur, Mumbai", "buyer_name"=>"xyz", "name"=>"xyz lmn", "countryCode"=>"IN", "payment_method"=>"Other", "order_type"=>"StandardOrder", "y_id"=>"r124", "phone"=>"12436", "state"=>"Maharashtra", "service"=>"Expedited", "address_1"=>"add 1", "address_2"=>"add 2", "postalCode"=>"400071", "shipped_by_y"=>"false", "channel"=>"MFN", "amout"=>"399.00"}]
Run Code Online (Sandbox Code Playgroud)
从这个数组我想选择为键赋值的元素y_id.例如.如果我想获得元素'y_id' = 'r124',我应该得到:
{"status"=>"Unshipped", "city"=>"Chembur, Mumbai", "buyer_name"=>"xyz", "name"=>"xyz lmn", "countryCode"=>"IN", "payment_method"=>"Other", "order_type"=>"StandardOrder", "y_id"=>"r124", "phone"=>"12436", "state"=>"Maharashtra", "service"=>"Expedited", "address_1"=>"add 1", "address_2"=>"add 2", "postalCode"=>"400071", "shipped_by_y"=>"false", "channel"=>"MFN", "amout"=>"399.00"}
Run Code Online (Sandbox Code Playgroud) Spark 中如何分解多个数组列?我有一个包含 5 个字符串化数组列的数据框,我想在所有 5 列上进行爆炸。为了简单起见,显示了 3 列的示例。
如果我有以下输入行:
col1 col2 col3
["b_val1","b_val2"] ["at_val1","at_val2","at_val3"] ["male","female"]
Run Code Online (Sandbox Code Playgroud)
我想在所有 3 个数组列上进行爆炸,因此输出应如下所示:
b_val1 at_val1 male
b_val1 at_val1 female
b_val2 at_val1 male
b_val2 at_val1 female
b_val1 at_val2 male
b_val1 at_val2 female
b_val2 at_val2 male
b_val2 at_val2 female
b_val1 at_val3 male
b_val1 at_val3 female
b_val2 at_val3 male
b_val2 at_val3 female
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
SELECT
timestamp,
explode(from_json(brandList, 'array<string>')) AS brand,
explode(from_json(articleTypeList, 'array<string>')) AS articleTypeList,
explode(from_json(gender, 'array<string>')) AS gender,
explode(from_json(masterCategoryList, 'array<string>')) AS masterCategoryList,
explode(from_json(subCategoryList, 'array<string>')) AS subCategoryList,
isLandingPage,
...
from …Run Code Online (Sandbox Code Playgroud) 我是第一次使用php.我知道创建一个HTML表单会初始化变量等$_POST, $_GET, $_REQUEST.
我在AddItem.php中有以下代码:
<?php require_once('../get-common/keys.php') ?>
<?php require_once('../get-common/eBaySession.php') ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<TITLE>AddItem</TITLE>
</HEAD>
<BODY>
<FORM action="AddItem.php" method="post">
<TABLE cellpadding="2" border="0">
<TR>
<TD>listingType</TD>
<TD>
<select name="listingType">
<option value="Chinese">Chinese</option>
<option value="Dutch">Dutch</option>
<option value="FixedPriceItem">Fixed Price Item</option>
<option value="StoresFixedPrice">Stores Fixed Price</option>
</select>
</TD>
</TR>
<TR>
<TD>primaryCategory</TD>
<TD>
<select name="primaryCategory">
<option value="14111">Test Category</option>
<option value="57889">Boys Athletic Pants</option>
<option value="57890">Boys Corduroys Pants</option>
<option value="57891">Boys Jeans Pants</option>
<option value="57892">Boys Khakis Pants</option>
</select> …Run Code Online (Sandbox Code Playgroud) 很抱歉发布这样一个天真的问题,但我只是无法解决这个问题.我写了以下条件语句:
if taxon == "Bracelets":
catId = "178785"
elif taxon == "Kids Earrings" or "Earrings":
catId = "177591"
elif taxon == "Mangalsutras":
catId = "177595"
elif taxon == "Necklaces" or "Necklace Sets":
catId = "177597"
elif taxon == "Kids Pendants" or "Pendants":
catId = "177592"
elif taxon == "Pendant Sets":
catId = "177593"
elif taxon == "Anklets":
catId = "178788"
elif taxon == "Toe Rings":
catId = "178787"
elif taxon == "Rings":
catId = "177590"
else:
print "no match\n"
Run Code Online (Sandbox Code Playgroud)
但无论分类单位的价值是什么,它总是落在第二个条件下,即 …
我有一个大的XML文件,大约30 MB.
我不时地需要更新一些值.我正在使用element tree模块来修改XML.我目前正在获取整个文件,更新它然后重新放置它.所以每次都有大约60 MB的数据传输.有没有办法远程更新文件?我使用以下代码更新文件.
import xml.etree.ElementTree as ET
tree = ET.parse("feed.xml")
root = tree.getroot()
skus = ["RUSSE20924","PSJAI22443"]
qtys = [2,3]
for child in root:
sku = child.find("Product_Code").text.encode("utf-8")
if sku in skus:
print "found"
i = skus.index(sku)
child.find("Quantity").text = str(qtys[i])
child.set('updated', 'yes')
tree.write("feed.xml")
Run Code Online (Sandbox Code Playgroud) python ×5
ruby ×2
amazon-ec2 ×1
apache-spark ×1
arrays ×1
dictionary ×1
django ×1
hash ×1
php ×1
python-2.7 ×1
sorting ×1
ssh ×1