python常用知识点的总结(非常实用幺!)

1.获取当前时间(年月日   时 分 秒)
nowtime=datetime.now()
2.在当前时间点上,往后推迟多长时间(天)
invalid_time=nowtime+timedelta(days=任意天数)
3.生成当前时间戳
time_stamp=time.time()
将datatime类型字符串转化为日期格式
4.通过某一个标志将字符串截取数个片段放入数组 并通过下标获取想要的字符串片段
string=strr.split(',' ,1)[0]
4.1 特殊字符串的替换
date=Data.replace('','')
第一个单一号中为old的字符,第二个为要替换的new字符。
4.2截取某一字符串的长度   例如
str=string[0:5]
mDate=fromDate.replace('-','')
5.通过条件对比利用sql的更新语句对数据库字段进行修改
sql='update tbl_coupon_detail set state=2 where now()>=invalid_time'
7. code=b'123456'
encode_secret = base64.b64encode(code)#base64加密
    md5s=hashlib.md5()#md5加密算法
    md5s.update(encode_secret)
codes=md5s.hexdigest()
  codesBig=codes.upper()
8.str.isdigit(nameOrTel)==True ,Flase 判断一个字符串是否是数字
9.(1)在CMD命令端输入 Pip list命令可直接查询出python中所安装的模块的目录及版本号
  (2) 利用pip导入指定版本号的模块
例如导入django1.10.3版本    pip install django==1.10.3
  (3)利用pip卸载指定版本号的模块
例如导入django1.10.3版本    pip uninstall django==1.10.3
10.django 模糊查询事例def search(request):  
(假设Person为一个数据类)
Person.objects.filter(name__contains="abc")  # 名称中包含 "abc"的人
Person.objects.filter(name__icontains="abc")  #名称中包含 "abc",且abc不区分大小

Person.objects.exclude(name__contains="WZ")  # 排除包含 WZ 的Person对象
Person.objects.filter(name__contains="abc").exclude(age=23)  # 找出名称含有abc, 但是排除年龄是23岁的

searchtype = request.POST.get("searchtype")  
keyword = request.POST.get("keyword")  
 if searchtype == "all":          #多个字段模糊查询, 括号中的下划线是双下划线,双下划线前是字段名,双下划线后可以是icontains或contains,区别是是否大小写敏感,竖线是或的意思  
        sciencenews = models.Sciencenews.objects.filter(Q(title__icontains=keyword)\  
       |Q(content__icontains=keyword)|Q(author__icontains=keyword))  
 elif searchtype == "author":  
        #单个字段模糊查询  
        sciencenews = models.Sciencenews.objects.filter(author__icontains=keyword)  
    elif searchtype == "title":  
        sciencenews = models.Sciencenews.objects.filter(title__icontains=keyword)  
    elif searchtype == "content":  
        sciencenews = models.Sciencenews.objects.filter(content__icontains=keyword)  
    else:  
        #使用点连接的filter链表示and  
        sciencenews = models.Sciencenews.objects.filter(author__icontains=keyword).\  
            filter(title__icontains=keyword).filter(content__icontains=keyword)  
          
    return render(request,"show/index.html",{"param":sciencenews,"searchtype":searchtype,"keyword":keyword})
 
11.后台接受前端传过来的文件的方法(图片,文本,word)
filename=None
    if request.method == 'POST' and request.FILES.get('file'):
        from django.core.files.storage import FileSystemStorage
#        from django.conf import settings
        myfile = request.FILES['file']
        fs = FileSystemStorage()
        filename = fs.save(myfile.name, myfile)
12.Django   的CSRF 的使用
http://www.cnblogs.com/zhaof/p/6281482.html
13.根据数据库表逆向生成models的步骤
(1)首先在setting中配置好要连接的数据库名称
(2)在终端中打开项目工程中manage.py的所在目录,运行下面的代码自动生成models模型文件
python manage.py inspectdb 运行程序生成models类
将生成的models模型倒入到项目工程中,首先创建一个app
django-admin.py startapp app  创建APP(项目中创建后壳省去)
python manage.py inspectdb > app/models.py 将生成的models数据倒入项目中的models类中
刷新项目工程即可
13.django models类 增删改查语句(假设User是一个类名(数据库表明))
ret=User.object.all() 查询表中所有数据
ret=User.object.filter(state=state)以state为条件查询表中数据,查询出的是多条数据,可遍历
ret=User.object.get(name=name)以name为条件查询表中的一条数据,查询出的数据为对象类型不可遍历
*****  查询2018.01.10之后发布的数据  *****
ret=User.object.filter(public_time_date_gt=datetime.date(2018,01,10))
*****  查询2018.01 发布的数据  *****
ret=User.object.filter(public_time_year=2018,public_time_month=1)
14.cookie秘钥的生成方法
cookie_secret=base64.b64encode(uuid.uuid4().bytes + uuid.uuid4().bytes)
15.mongodb 导入数据库
打开 CMD 直接输入下面命令即可

示例网址:  https://www.cnblogs.com/jiyukai/p/6980104.html
导出单个表 mongoexport -h localhost:27017 -d test(数据库名字) -c ‘数据库表名字’ -o C:/Users/admin/Desktop/test
导入单个表 mongoimport -h localhost:27017 -d test(数据库名字) -c '数据库表名字' -o C:/Users/admin/Desktop/test

导入整个数据库 mongorestore -h localhost:27017 -d test(为所创建的数据库的名字) --dir C:/Users/admin/Desktop/test(要导入的文件的路径)

导出整个数据库 mongodump -h 127.0.0.1 -d test(数据库名字) -o C:/Users/admin/Desktop/test(test是创建的文件夹)

16.mysql查询出的数据中文乱码或者出现问号 一般需要在配置mysql链接时加上字符集为 UTF8 即可 例如:
conn=pymssql.connect(server='.',user='', password='',database='MyTest',charset='utf8')

17. Python3.5中,iteritems变为items(import请注意)

猜你喜欢

转载自blog.csdn.net/yangczcsdn/article/details/81302081
今日推荐