python基础

1、enumerate给列表中的每个值赋予索引

seq = ["one","two","three"]
for i,ele in enumerate(seq):
    print(i,ele)

2、zip

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,b)     # 打包为元组的列表,[(1, 4), (2, 5), (3, 6)]
print(zip(a,c))              # 元素个数与最短的列表一致,[(1, 4), (2, 5), (3, 6)]

>>> zip(*zipped)          # 与 zip 相反,*zipped 可理解为解压,返回二维矩阵式
[(1, 2, 3), (4, 5, 6)]

3、->常常出现在python函数定义的函数名后面,为函数添加元数据,描述函数的返回类型,从而方便开发人员使用。比如:

def add(x, y) -> int:
   return x+y

4、pip更换为阿里的源

1.在运行窗口或资源管理器中输入%APPDATA%

2.进入目录后,新建一个文件夹pip,并在该文件夹里面新建文件pip.ini,并输入以下内容:

[global] 
index-url = http://mirrors.aliyun.com/pypi/simple/ 
[install] 
trusted-host=mirrors.aliyun.com 

5、安装虚拟环境

1、通过模块 venv 安装

python -m venv myvenv

2、激活

<myvenv>\Scripts\activate.bat

3、pycharm使用
setting里设置解释器,选择已经存在的虚拟环境。

6、crontab 使用

https://www.cnblogs.com/cqlb/p/9772207.html

crontab任务配置基本格式:
*   *  *  *  *  command
第1列表示分钟0~59 每分钟用 * 或者 */1 表示
第2列表示小时0~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0,7都可表示星期天)
第6列要运行的命令或执行shell脚本
比如:每分钟执行一次wr.sh脚本
*/5 * * * * sh /mnt/server/wr.sh

然后启动服务:service crond start
相关操作命令:

crontab -l
-u 指定一个用户
-l 列出某个用户的任务计划
-r 删除某个用户的任务
-e 编辑某个用户的任务

7、shell

配合crontab,添加一个监控shell,监控pyhton任务,如果挂了就自动重启。

#!/bin/sh
echo 'process start'
PROCESS_NUM=`ps -ef | grep 'need_started_py_job' | wc -l`
echo $PROCESS_NUM
if (($PROCESS_NUM < 2));
then
        #exit
        echo process is not running!
        echo "进程不存在,将进行重启"
        nohup python3 -u /home/need_started_py_job.py > /home/logs/mylog.log 2>&1 &
        echo 重启完成
else
        echo process is running!

fi
posted @ 2021-05-17 16:56  木叶流云  阅读(76)  评论(0编辑  收藏  举报