资讯专栏INFORMATION COLUMN

Python Tips

Reducto / 1638人阅读

摘要:的三种数据类型字典列表元组,分别用花括号中括号小括号表示。约等于上句,可能是因为自定义变量名与内部函数或变量同名了。下,默认路径一般为。的日志模块中计时器定时器计划任务,。对象的问题怎样忽略警告不打印烦人的警告打印到终端同时记录到文件。

Python Enhancement Proposal。(PEP,Python增强建议书)

Python之禅(import this)

Python Cookbook 3rd Edition Documentation

第三方二进制扩展库:Unofficial Windows Binaries for Python Extension Packages

Python 代码执行可视化:PyTutor

Google Python 语言规范

Google Python 风格规范

pip 镜像

# 豆瓣
pip3 install psutil -i https://pypi.doubanio.com/simple/
# 阿里云
pip3 install psutil -i https://mirrors.aliyun.com/pypi/simple/

Python用print打印html文档时,若不打印协议首部,可能无法输出html文档。

print("Content-type: text/html
")

Python2.7 搭建简单http server,只能解析静态文件。

python2.7  -m  SimpleHTTPServer 5678

pip install 使用代理

# 须先安装 PySocks 才能使用 SOCKS5 代理
pip3 install PySocks
pip3 install psutil --proxy socks5://192.168.30.172:10080

Python3 搭建简单http server,只能解析静态文件。

python3 -m http.server 5678

Python2.7 搭建能处理python脚本的http server。

python2.7 -m CGIHTTPServer 5678

Python3 搭建能处理python脚本的http server。

from http.server import HTTPServer, CGIHTTPRequestHandler
port = 5678
httpd = HTTPServer(("", port), CGIHTTPRequestHandler)
print("Starting simple_httpd on port: " + str(httpd.server_port))
httpd.serve_forever()

Python 的三种数据类型字典、列表、元组,分别用花括号、中括号、小括号表示。如:

字典:dic={"a":12, "b":34}
列表:li=[1, 2, 3, 3]
集合:s = {1, 2, 3, 4}    # set是无序的无重复元素的列表
元组:tup=(1, 2, 3, 4)    # 元组是不可更改的列表

Python 打印不换行

(1)、通用方法

import sys
sys.stdout.write("no new line")

(2)、Python2 print 不换行(加逗号)

print "no new line",

(3)、Python3 print 不换行

print("no new line", end="")

Python 2.x 在使用help函数时,对内置函数一定要加引号

help(print)    # wrong
help("print")  # right

Python 模块的一般安装方法:

python setup.py install

Python 的全局变量若在函数内部被修改,会被编译器认为是局部变量,解决办法是在函数内用global声明这个变量。

Python打印异常信息。

try:
    #do someting
except:
    import traceback
    print(traceback.format_exc())
    traceback.print_exc()    # 约等于上句

TypeError: "str" object is not callable ,可能是因为自定义变量名与内部函数或变量同名了。

以Windows Service的方式运行Python程序

Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

几个Python配置工具简介:setuptools、pip、virtualenv

Python 包管理工具解惑

python中获取python版本号的方法

import platform
print(platform.python_version())

import sys
print(sys.version)

查看python的搜索路径。

>>> import sys
>>> print sys.path

任何情况下都只认 sys.path!参见:分别描述python2.x和python3.x import 包时的路径搜索顺序!

当你导入一个模块,Python 解析器对模块位置的搜索顺序是:
1、当前目录
2、如果不在当前目录,Python 则搜索在 shell 变量 PYTHONPATH 下的每个目录。
3、如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/。
模块搜索路径存储在 system 模块的 sys.path 变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。

python 的日志 logging 模块

Python 中计时器/定时器/计划任务,Timer/sched/APScheduler。

Python3中str与bytes转换:The bytes/str dichotomy in Python 3

Python自定义排序

(1)、python 内建排序 HOW TO
(2)、Python中sorted()方法的用法

Python中configparser的bom问题,将"utf8"换为"utf-8-sig"即可。参见:configparser读取含有中文的配置(Windows)

whell文件(名)的格式:PEP 0427 -- The Wheel Binary Package Format 1.0

本机python的兼容性可以用这样查看:({python tag}-{abi tag}-{platform tag})

>>> import pip
>>> from pprint import pprint
>>> pprint(pip.pep425tags.get_supported())
[("cp34", "none", "win_amd64"),
 ("py3", "none", "win_amd64"),
 ("cp34", "none", "any"),
 ("cp3", "none", "any"),
 ("cp33", "none", "any"),
 ("cp32", "none", "any"),
 ("cp31", "none", "any"),
 ("cp30", "none", "any"),
 ("py34", "none", "any"),
 ("py3", "none", "any"),
 ("py33", "none", "any"),
 ("py32", "none", "any"),
 ("py31", "none", "any"),
 ("py30", "none", "any")]

Python内置模块/函数C代码查看:https://hg.python.org/cpython...

好玩的运算精度问题。

>>> 33/22
1.5
>>> 3.3/2.2
1.4999999999999998
>>> 33/15
2.2
>>> 3.3/1.5
2.1999999999999997
>>> 2-1.1
0.8999999999999999

Python not 对象True/False 的问题:Why is “if not someobj:” better than “if someobj == None:” in Python?

怎样忽略警告(不打印烦人的警告): warnings.filterwarnings

import warnings
warnings.filterwarnings("ignore")

Python打印到终端同时记录到文件(tee)。(How do I duplicate sys.stdout to a log file in python?)

class Tee(object):
    def __init__(self):
        self.terminal = sys.stdout
        self.log = open("log.log", "a")
        
    def __del__(self):
        sys.stdout = self.terminal
        self.log.close()

    def write(self, message):
        self.terminal.write(message)
        self.log.write(message)  
        self.log.flush()
        
sys.stdout = Tee()

print("HaHaHa")

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/45272.html

相关文章

  • ☀️苏州程序大白一文从基础手把手教你Python数据可视化大佬☀️《❤️记得收藏❤️》

    ☀️苏州程序大白一文从基础手把手教你Python数据可视化大佬☀️《❤️记得收藏❤️》 目录 ?️‍?开讲啦!!!!?️‍?苏州程序大白?️‍??博主介绍前言数据关系可视化散点图 Scatter plots折线图强调连续性 Emphasizing continuity with line plots同时显示多了图表 数据种类的可视化 Plotting with categorical da...

    Drinkey 评论0 收藏0
  • 简析前端学习python3的基础

    摘要:元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。元组缓存于运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。 以下是整理的JavaScript和python的基础区别的整理: 字符串、列表、元组、字典、集合、函数 字符串 声明一个字符串 python str = 123 str = 123 Tips: 如果是三个引号的话,那么在py中就是注释的意思 ...

    summerpxy 评论0 收藏0
  • 简析前端学习python3的基础

    摘要:元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。元组缓存于运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。 以下是整理的JavaScript和python的基础区别的整理: 字符串、列表、元组、字典、集合、函数 字符串 声明一个字符串 python str = 123 str = 123 Tips: 如果是三个引号的话,那么在py中就是注释的意思 ...

    LiveVideoStack 评论0 收藏0
  • python tips

    摘要:中的可以起到与此处相同的效果判断奇数自然是使用位操作最快了删除要删除的数量较多超多一半的话,建议重新生成如果数量较少,在和都可以的情况下,稍快一些 给dict设置默认值 这样能设置所有key的默认值为[],包括新添的key from collections import defaultdict context = defaultdict(list) setdefault一次只能设置一个...

    fuchenxuan 评论0 收藏0
  • Python数据分析学习笔记之Pandas入门

    摘要:是一个数据分析的开源库。与表格或关系数据库中的表非常神似。注意带有一个索引,类似于关系数据库中的主键。的统计函数分组与聚合通过方法,可以对数据组施加一系列的函数。函数的作用是串联,追加数据行使用函数。 pandas(Python data analysis)是一个Python数据分析的开源库。pandas两种数据结构:DataFrame和Series 安装:pandas依赖于NumPy...

    zqhxuyuan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<