如何在python列表中写入if-else条件?
我得到了图像的像素大小,我需要在像素处写一个if条件 如果jpg或tiff:做点什么 否则为“0,0” 我怎样才能写出下面的代码如何在python列表中写入if-else条件?,python,django,python-2.7,python-3.x,django-views,Python,Django,Python 2.7,Python 3.x,Django Views,我得到了图像的像素大小,我需要在像素处写一个if条件 如果jpg或tiff:做点什么 否则为“0,0” 我怎样才能写出下面的代码 def get(self, request, **response_kwargs): main_request = MediaRequest.objects.get(request_unique_id=self.kwargs['request_unique_id']) files = MediaFile.objects.filter(req
def get(self, request, **response_kwargs):
main_request = MediaRequest.objects.get(request_unique_id=self.kwargs['request_unique_id'])
files = MediaFile.objects.filter(request=main_request)
files_list = []
for media_file in files:
files_list.append ({
'preview' : "/render/" + str(main_request.request_unique_id) + "/" + media_file.filename,
'name' : media_file.filename,
'status' : media_file.status,
'comment' : media_file.comment,
'id':media_file.id,
'pixel' :
if "jpg" not in media_file.filename:
Image.open(settings.MEDIA_ROOT + main_request.request_unique_id + "/"+ media_file.filename).size
else:
return '0, 0'
})
请参阅三元运算符(或条件表达式):“X if C else Y”
如果“jpg”不在媒体文件中。文件名:^SyntaxError:它给出的语法无效,我无法重现您的错误。但是,只要指出文件名中有jpg的风险,即使它不是jpg文件。检查文件名中的最后4个字母是否为“.jpg”会更好(更有效)吗?如何编写if-else条件来查找.jpg和tif,然后执行image.open命令…否则需要返回0,0?
code'File”/views.py”,第374行,在get'pixel':image.open中(settings.MEDIA_ROOT+main_request.request_unique_id+“/”+MEDIA_file.filename)。如果“jpg”不在MEDIA_file.filename else“0,0'})文件“/PIL/Image.py”,第2286行,在open%(filename if filename else fp)中,则错误:无法识别图像文件“/pathf file/testfile.pdf”
仍在获取错误信息
for media_file in files:
files_list.append ({
'preview' : "/render/" + str(main_request.request_unique_id) + "/" + media_file.filename,
'name' : media_file.filename,
'status' : media_file.status,
'comment' : media_file.comment,
'id':media_file.id,
'pixel' : Image.open(settings.MEDIA_ROOT + main_request.request_unique_id + "/"+ media_file.filename).size if "jpg" not in media_file.filename else '0, 0'
})
'pixel' : Image.open(settings.MEDIA_ROOT + main_request.request_unique_id
+ "/"+ media_file.filename).size if ("JPG" in media_file.filename.upper())
or ("TIF" in media_file.filename.upper()) else '0, 0'}