sed replace

图灵

1
2
3
4
5
6
7
8
9
10
11
sed -i 's/\\"//g' file
sed -i 's/\\\\\//\//g' file
sed -i 's/"\[{""json"":""/\[/g' file
sed -i 's/{""json"":""//g' file
sed -i 's/"",""mt"":[0-9]*}\]"/\]/g' file
sed -i 's/"",""mt"":[0-9]*}//g' file

Use double quotes so that sed would expand variables.

sed "s|\$ROOT|${HOME}|" abc.sh

  • shell变量在双引号内会被解析
  • 在单引号内不会被解析

How to use variables in a command in sed?

django transform queryset to dict

model_to_dict方法

1
2
from django.forms.models import model_to_dict
model_to_dict(instance)

参考链接

toDict方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Category(models.Model):
autoid = models.AutoField(primary_key=True)
email=models.CharField(max_length=150,blank=False)
comtype=models.CharField(max_length=20,blank=False)
catname=models.CharField(max_length=150,blank=False)
def __unicode__(self):
return '%s' % (self.catname)
def toJSON(self):
import json
return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
def toDict(self):
return dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]])

可读性更强的版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
def toJSON(self):
fields = []
for field in self._meta.fields:
fields.append(field.name)
d = {}
for attr in fields:
d[attr] = getattr(self, attr)
import json
return json.dumps(d)
def toDict(self):
fields = []
for field in self._meta.fields:
fields.append(field.name)
d = {}
for attr in fields:
d[attr] = getattr(self, attr)
return d

参考链接