pip的使用

升级pip

python3 -m pip install --upgrade pip

镜像源设置

  1. 查看镜像源 pip config list

  2. 指定镜像源更新依赖 pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple

  3. 设置全局镜像源:

    pip config set global.index-url mirror_url_path  #指定镜像服务器域名地址
    pip config set global.timeout number #设置连接超时时间,以秒为单位,指定number秒后,连接超时
    pip config set install.trusted-host hostname #将以上镜像服务器的域名加入到Install命令的信任域名列表内
    • 例如:
    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

常用镜像源

#国内比较常用的镜像地址,本人选择的是阿里云的镜像服务
http://pypi.douban.com/simple/ #豆瓣
https://pypi.tuna.tsinghua.edu.cn/simple #清华开源
https://mirrors.aliyun.com/pypi/simple/ #阿里云,比较靠谱,最起码可以安装jupyter
https://pypi.mirrors.ustc.edu.cn/simple/ #中科大
https://pypi.hustunique.com/ #华中理工
https://pypi.sdutlinux.org/ #山东理工

requirements.txt

requirements.txt 是 python 在不同的环境中对依赖包的一种约定,用于列出 Python 项目中所有的依赖包以及对应版本号的文本文件。一般在项目的在工程目录下。

编写格式

pkg==version 等于版本
pkg>version 大于版本
pkg<version 小于版本
pkg>=version 大于等于版本
pkg<=version 小于等于版本
pkg~=version 大于版本
pkg >= 1.0, <=2.0 容版本,使用任何大于或等于指定版本,但不大于当前发行系列的版本,

安装 requirements.txt中的包

pip install -r requirements.txt

更新 requirements.txt中的包

pip freeze > requirements.txt

日志配置

  • processName:表示进程号,理论每个请求的进程号是不一样的,可以在请求入口设置,以此进行链路追踪。设置方式:

        import multiprocessing
    # 设置进程号,作为日志记录的前缀,方便做链路追踪
    multiprocessing.current_process().name = data.userid
  • 完整示例:

import logging
from logging.handlers import TimedRotatingFileHandler
import os logger = logging.getLogger('film_grain')
logger.setLevel(logging.DEBUG) # 日志文件根目录
PARENT_DIR = os.path.split(os.path.realpath(__file__))[0] # 日志目录
LOGGING_DIR = "/home/logs/"
if not os.path.exists(LOGGING_DIR):
os.mkdir(LOGGING_DIR) handlers = {
"info": TimedRotatingFileHandler(filename = LOGGING_DIR + "info.log", when = 'D', interval = 1, backupCount = 30),
"error": TimedRotatingFileHandler(filename = LOGGING_DIR + "error.log", when = 'D', interval = 1, backupCount = 30)
} formatter = logging.Formatter("%(asctime)s [%(levelname)s] [%(processName)s] %(funcName)s - %(message)s") # 设置每个处理器的日志级别
for level, handler in handlers.items():
handler.setLevel(getattr(logging, level.upper()))
handler.setFormatter(formatter)
logger.addHandler(handler) # 如果你想在控制台也看到日志
console = logging.StreamHandler()
console.setLevel(logging.DEBUG)
console.setFormatter(formatter)
logger.addHandler(console)

python基础应用的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  2. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  3. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  4. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  5. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  6. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  7. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  8. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  9. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  10. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. 【2024.09.15】NOIP2024 赛前集训(2)

    [2024.09.15]NOIP2024 赛前集训(2) A 最大的难点戏剧性地变成了二叉搜索树是什么. 先根据已知序列把二叉树建出来,忘了二叉搜索树的移步 二叉搜索树 & 平衡树 - OI ...

  2. c语言里关于本地变量的一些规则

    关于块的定义(自己的理解):就是☞{ }这个区域里面的东西以及" {} "这个符号的本身 ·本地的变量是定义在块内的 -->>1.它可以定义在函数的块内 void sw ...

  3. RAC:无训练持续扩展,基于检索的目标检测器 | ECCV'24

    来源:晓飞的算法工程笔记 公众号,转载请注明出处 论文: Online Learning via Memory: Retrieval-Augmented Detector Adaptation 论文地 ...

  4. 记录一下opencv-contrib的编译使用

    一.来由 公司需求进行多图拼接算法,在opencv提供的Stitcher类当中默认的算子是ORB,我想尝试使用SIFT和SURF算子,经过一番查找发现这两个算子需要opencv的超集库支持--&quo ...

  5. 经典C语言题目——打印罗汉塔图形

    打印如下图形: ++++1 +++22 ++333 +4444 55555 点击查看代码 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> ...

  6. 解决MindSpore-2.4-GPU版本的安装问题

    问题背景 虽说在MindSpore-2.3之后的版本中不在正式的发行版中支持GPU硬件后端,但其实在开发分支版本中对GPU后端是有支持的: 但是在安装的过程中可能会遇到一些问题或者报错,这里复现一下我 ...

  7. 使用Ollama和Open WebUI管理本地开源大模型

    Open WebUI和Ollama介绍 Open WebUI 是一个功能丰富且用户友好的自托管 Web 用户界面(WebUI),它被设计用于与大型语言模型(LLMs)进行交互,特别是那些由 Ollam ...

  8. hyperf使用session

    在hyperf里面使用session的时候可以先安装组件包 composer require hyperf/session Session 组件的配置储存于  config/autoload/sess ...

  9. Java垃圾回收器总结

    什么是Java垃圾回收器 Java垃圾回收器是Java虚拟机(JVM)的三个重要模块(另外两个是解释器和多线程机制)之一,为应用程序提供内存的自动分配(Memory Allocation).自动回收( ...

  10. Tornado框架之应用安全(四)

    知识点 Cookie操作 安全Cookie 跨站请求伪造原理 XSRF保护 模板 请求体 HTTP报文头 用户验证 authenticated装饰器 get_current_user()方法 logi ...