杂文|Python3非常用手册

系统 192 0

基础

输入类型强制转化

输入为字符串形式,若要进行输入类型转换或输出提示信息,可如此形式:int(input("输入一个整数:"))

输出形势

print('a'+'b')    结果:ab

print('a','b')    结果:a b

print('%s%s'%('a','b'))    结果:ab

print()函数去掉自动添加的换行:print('a',ending='')

在函数中强制修改全局变量

例如:

            
              global A=100
            
          

循环中的else

Python中while和for常见到配有else。

假若循环中存在break,当执行break跳出循环时,不执行else块的代码;

若正常地结束循环,则要执行else块的代码。

编码

默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 

指定编码方法:

            
              # -*- coding: gbk -*-
#coding=gbk
            
          

指定解释器

            
              #!/usr/bin/python3
            
          

表示 python3 解释器所处的绝对路径就是 /usr/bin/python3, 路径被写死了, 类似于编程中的"硬编码"。

            
              #!/usr/bin/env/ python3
            
          

表示从 "PATH 环境变量"中查找 python3 解释器的位置, 路径没有被写死, 而是在"环境变量"中寻找 python3 解释器的安装路径, 再调用该路径下的解释器来执行脚本。

备注:

当命令行的解释器指定和py文件内的解释器指定冲突时,命令行优先;

以上的路径是基于Linux/Unix的。

if __name__ == "__main__":

当.py文件被直接运行时,if __name__ == "__main__":之下的代码块将被运行;

当.py文件以模块形式被导入时,if __name__ == "__main__":之下的代码块不被运行。

短路计算

杂文|Python3非常用手册_第1张图片

匿名函数(lambda)

可以使用lambda简单快速地定义一个函数,其格式为:

[函数名] = lambda [传入参数] : [函数返回值]

例如:

add = lambda x,y : x+y

def add(x,y):

    return x+y

一致

@函数装饰器

当程序使用“@函数”(比如函数 A)装饰另一个函数(比如函数 B)时,实际上完成如下两步:

  1. 将被修饰的函数(函数 B)作为参数传给 @ 符号引用的函数(函数 A)。
  2. 将函数 B 替换(装饰)成第 1 步的返回值。
            
              def funA(fn):
    print('A')
    fn() # 执行传入的fn参数
    return 'fkit'
@funA
def funB():
    print('B')
print(funB) # fkit
            
          

 

上面程序使用 @funA 修饰 funB,这意味着程序要完成两步操作:

  1. 将 funB 作为 funA() 的参数,也就是上面代码中 @funA 相当于执行 funA(funB)。
  2. 将 funB 替换成上一步执行的结果,funA() 执行完成后返回 fkit,因此 funB 就不再是函数,而是被替换成一个字符串。

运行上面程序,可以看到如下输出结果:

A
B
Fkit


附录

pip常用命令

获取帮助:pip --help

升级 pip:pip install -U pip

安装包:pip install SomePackage

卸载包 :pip uninstall SomePackage

升级指定的包:pip install -U SomePackage

搜索包:pip search SomePackage

查看指定包的详细信息:pip show -f SomePackage

列出已安装的包:pip freeze or pip list

查看可升级的包:pip list -o

pip自升级:python -m pip install --upgrade pip

round()函数四舍六入五成双

Python2:

round()函数进行四舍五入

Python3:

①当被修约的值为5时,如果它前面的数为偶数且被修约数的后面没有数时则舍弃;

②当被修约的值为5时,如果它前面的数为奇数时则进位;

③当被修约的值为5时,如果它前面的数为偶数时且被修约数的后面还有数时,则进位。

例如:

对22.5取值是舍

对23.5取值是进

对22.51取值是进

sys.argv[]

sys.argv[]可以从程序外部获取参数,由于从外部取得的参数可以是多个,所以获得的是一个 列表 (list),也就是说sys.argv其实可以看作是一个列表,所以才能用[]提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。

向程序传入参数的方式就是通过命令行:python [文件名].py [参数1] [参数2] ……

其中sys.argv[0]是指程序本身(包含路径+文件名),从sys.argv[1]开始才是传入的参数。

程序中使用该方法需要导入sys包(import sys)


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请请扫描上面二维码支持博主1元、2元、5元等您想捐的金额吧,狠狠点击下面给点支持吧

发表我的评论
最新评论 总共0条评论