zoukankan      html  css  js  c++  java
  • Python笔记

    近期打算认真学一学python,很早之前就看过但是一直没有毅力坚持下来,这篇笔记就当督促自己学习的动力吧!!!

    1,直接运行py文件

    能不能像.exe文件那样直接运行.py文件呢?在Windows上是不行的,但是,在Mac和Linux上是可以的,方法是在.py文件的第一行加上一个特殊的注释:

    1 #!/usr/bin/env python3
    2 
    3 print('hello, world')

    然后,通过命令给hello.py以执行权限:

    $ chmod a+x hello.py

    就可以直接运行hello.py了,比如在linux下运行:

    ./hello.py

    python后台运行py程序:


    nohup python manage.py runserver >/usr/local/nginx/server/logs/easyQAsystem.log 2>&1 &


    说明:

    1是标准输出(STDOUT)的文件描述符,2是标准错误(STDERR)的文件描述符

    1> /usr/local/nginx/server/logs/easyQAsystem.log 简化为 > /usr/local/nginx/server/logs/easyQAsystem.log,表示把标准输出重定向到/usr/local/nginx/server/logs/easyQAsystem.log这个文件

    2>&1 表示把标准错误重定向到标准输出,这里&1表示标准输出

    为什么需要将标准错误重定向到标准输出的原因,是因为标准错误没有缓冲区,而STDOUT有。
    这就会导致 commond > python.log 2> python.log 文件python.log被两次打开,而STDOUT和
    STDERR将会竞争覆盖,这肯定不是我门想要的。好了,我们现在可以直接关闭shell窗口(我用的是SecureCRT,用的比较多的还有Xshell),而不用再输入exit这个命令来退出。

    [root@shtppATTSTPUBv01 easyQAsystem]# 
    [root@shtppATTSTPUBv01 easyQAsystem]# nohup python manage.py runserver >/usr/local/nginx/server/logs/easyQAsystem.log  2>&1 &
    [1] 51576
    [root@shtppATTSTPUBv01 easyQAsystem]# ps -ef|grep manage
    root      51576  33130  7 16:49 pts/0    00:00:00 python manage.py runserver
    root      51591  51576  8 16:49 pts/0    00:00:00 /usr/bin/python /opt/easyQAsystem/manage.py runserver

    2,Python代码格式

     以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。

     缩进有利有弊。好处是强迫你写出格式化的代码,但没有规定缩进是几个空格还是Tab。按照约定俗成的管理,应该始终坚持使用4个空格的缩进。

    1 # print absolute value of an integer:
    2 a = 100
    3 if a >= 0:
    4     print(a)
    5 else:
    6     print(-a)

    3,Python列表

    • python列表就像数组,内存中使用堆栈进行存储。
    movies=['The Holy Grail','The Life of Brain','The Meaning of Life']
    print(type(movies))

    movies类型为<class 'list'>

    可以使用[]加下标进行访问列表成员(下标从0开始);

    使用len(列表名)获取列表长度;

    列表末尾增加一个数据项append(param);

    从列表末尾删除一个数据线pop();

    在列表末尾增加一个数据项集合extend(params);

    在列表中删除一个指定的数据项remove(param);

    在列表指定位置前增加一个数据项insert(0,param);

    • 列表推导式书写形式:  

    [表达式 for 变量 in 列表]    或者  [表达式 for 变量 in 列表 if 条件]

    4,pip: failed to create process.解决方法

    昨天在使用pip过程,pip提示:failed to create process。

    解决方法:python -m pip install xxx 就可以了

    如以matplotlib为例即:python -m pip install matplotlib 即可安装成功

    5,reload() 用于重新载入之前载入的模块。

    import imp
    imp.reload(module)
  • 相关阅读:
    五、Java对象和类
    四、JavaString字符串
    三、Java语句
    二、Java基本数据类型
    一、Java主类结构
    bat常用命令
    iOS 如何获得app的版本和系统的版本
    英语----时态---将来时态的四种对比
    英语----时态---将来时态的
    英语----时态---现在进行时与过去进行时
  • 原文地址:https://www.cnblogs.com/hoaprox/p/9350773.html
Copyright © 2011-2022 走看看