django项目开发过程中基本的Python脚本编写

1.示例及讲解:

#!/usr/bin/env python
# 指定脚本运行环境   
# #!coding=utf-8
#输入这一条就可以在Python脚本里面使用汉语注释!此脚本可以直接复制使用;
import time

import sys
sys.path.insert(0, '../')   # 注意脚本执行过程中可能涉及到的导包路径,无法从当前目录下导包的,需要指定导包路径,

# 使用django配置文件进行设置
import os
if not os.getenv("DJANGO_SETTINGS_MODULE"):
    os.environ["DJANGO_SETTINGS_MODULE"] = "xxxx.settings"  # 一般是工程目录.settings

# 让django初始化
import django
django.setup()

from XXXX import generate_static_index_html # 导入需要执行的函数或者方法,移到启动入口也可以

if __name__ == '__main__':
    start_time = time.time()
    generate_static_index_html()   # 调用函数
    print("查询耗时:%s" % (time.time()-start_time))  # 可以统计脚本的执行时间

2.注意点:

  • 2.1 注意第一行必须声明正确的脚本执行环境
  • 2.2 最后统一指定编码格式utf-8,可以直接复制过去用。
  • 2.3 对于模块和自己写的脚本不在同一个目录下,则需要添加需要使用到的模块或包的路径。sys.path.insert(0, 路径),或者sys.path.append(路径),为方便第一时间查询到,建议使用insert插入到最前面
  • 2.4 注意django项目的配置文件settings如果目录更改或者更名,需要及时调整django配置环境选项os.environ["DJANGO_SETTINGS_MODULE"]
  • 2.5 脚本执行之前,还需要准备好django运行环境,即需要导入django并加上django.setup()
  • 2.6 在程序入口调用需要执行的函数或方法或者其他代码。
  • 2.7 给该脚本文件添加可执行权限
chmod +X XXXX.py
  • 2.8 以下方法执行脚本
./XXXX.py

http://www.niftyadmin.cn/n/813234.html

相关文章

Django-- (六) Django高级开发

1、自定义过滤器 Django提供了很多过滤器,但有时并不能满足我们的需求,这时候就需要自定义过滤器来实现某种功能。 1.1 步骤 1、创建templatetags包 名字是固定的,不能随意改动 2、 在templatetags包里创建文件,用来存放过滤器…

利用Flume拦截器(interceptors)实现Kafka Sink的自定义规则多分区写入

我们目前的业务场景如下:前端的5台日志收集服务器产生网站日志,使用Flume实时收集日志,并将日志发送至Kafka,然后Kafka中的日志一方面可以导入到HDFS,另一方面供实时计算模块使用。 前面的文章《Kafka分区机制介绍与示…

css基础知识分享

记忆力有限,很多知识都只能通过不断的复习笔记和实际操作来加深记忆,分享一些css的基础知识。 1、CSS作用以及初识 Css的作用: Cascading Style Sheets,简称层叠样式表,主要是用来进行页面的版面布局和外观样式的美化&…

自定义Django文件存储系统保存文件到FastDFS

1.前言: Django自带文件存储系统,但是默认文件存储在本地,在实际项目开发中,我们需要将文件保存到公司自己搭建的FastDFS服务器上,所以需要自定义django的文件存储系统。 2.实现方法: 自定义文件存储系统…

Mybatis 二(3)之逆向工程

1. 逆向工程生成代码: 【参考文档(配置全局文档、测试代码)网址: http://www.mybatis.org/generator/configreference/xmlconfig.html 】 在企业中,设计阶段会进行表设计,创建逆向工程,由数据表…

Flume中的拦截器(Interceptor)介绍与使用(一)

Flume中的拦截器(interceptor),用户Source读取events发送到Sink的时候,在events header中加入一些有用的信息,或者对events的内容进行过滤,完成初步的数据清洗。这在实际业务场景中非常有用,Flu…

Django-- (七) Django异步开发

1、异步开发 开发中有一些任务就是耗时的,这时就需要异步任务来解决这个问题。 1.1 celery框架 负责Python进行异步通信的框架,可以实现分布式任务执行,定时任务执行,使用Celery执行任务,任务不会阻塞主进程&#x…

Python面试题分享(十二)

41. 查询集两大特性?惰性执行? 1. 惰性执行 创建查询集不会访问数据库,直到调用数据时,才会访问数据库,调用数据的情况包括迭代、序列化、与if合 用 2. 缓存 使用同一个查询集,第一次使用时会发生…