zoukankan      html  css  js  c++  java
  • Python 实践

    Python on centos

    python 2.6.6安装pip
    yum install -y python-pip
    或者手动安装pip, setuptools

    python升级

    python2.6升级到python3.6
    先确保yum可用,且在root用户下运行 update_to_python3.sh脚本
    python2.6升级到python2.7,需要安装pip, setuptools。而python3.6已经自带了。
    (1)下载压缩包Python-3.6.1.tgz
    (2)安装gcc
    yum install gcc
    (3)安装zlib
    yum -y install zlib*
    (4)修改yum源(手动去执行)
    vi /usr/bin/yum
    将#!/usr/bin/python修改为#!/usr/bin/python2.6
    (5)设置pip源(先需要手动创建目录)(该步骤手动去执行)
    mkdir ~/.pip
    vi ~/.pip/pip.conf

    python package相对导入,绝对导入

    (1) python工程运行在windows环境,借助pycharm IDE, 能自动组织导入
    (2) 运行在centos中,很容易出现模块找不到情况。
    solution:
    glance为顶层包,包括operation, util两个子包。glance包内全部采用相对导入。
    程序主入口mian.py要放在与glance同一级目录。mian.py中只能采用绝对导入。
    则不要再次加入,sys.path.append(os.path.abspath('../../glance'))

    from glance.opencv.star_detector import StarFeatureDetector
    from . import star_detector
    如果要执行main.py,则在main.py中不能包含相对导入。

    python issue

    python3 报错ssl
    solution: 参考update_to_python3_with_ssl.sh
    在编译之前增加:
    yum -y install openssl-devel
    ./configure --prefix=/usr/local/python3/ --with-ssl

    忽略抛出异常
    import warnings
    warnings.filterwarnings("ignore", category=DeprecationWarning)

    lambda与列表推导式

    x = []
    for sentence in text:
    out1 = text_to_word_sequence(sentence)
    out2 = one_hot(str(out1), 5)
    x.append(out2)

    求最大值
    列表推导式更简洁,[len(element) for element in x]
    max_len = max([len(element) for element in x])

    lambda定义一个匿名函数,在map方法中执行
    max_len_2 = max(map(lambda element: len(element), x))

  • 相关阅读:
    跨域资源共享 CORS 详解以及IIS中的配置方法
    c#创建文件夹时无法访问路径,路径拒绝访问
    C#接口在派生类和外部类中的调用
    .NET/C#识别用户访问设备
    另一个SqlParameterCollection中已包含SqlParameter
    Java中throw和throws的区别
    MySQL与Oracle的语法区别详细对比
    hibernte中用criteria实现not in功能的方法
    使用Hibernate SQLQuery执行原生SQL
    hibernate查询数据表char类型字段只返回一个字符
  • 原文地址:https://www.cnblogs.com/sunzhuli/p/9696866.html
Copyright © 2011-2022 走看看