Python| Python常用语法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011479200/article/details/87893820

英文单词
reduce(function, sequence, initial=None)
tuple (a,b) 元组


文件IO操作

  • 获取父路径:
    在这里插入图片描述

字符串相关Str

字符串不为None不为空串的判断方法:

if s and len(s.strip()) > 0:

strip函数默认删除空白符(包括’\n’, ‘\r’, ‘\t’, ’ ')

字符串拼接
str.join(元组、列表、字典、字符串) 之后生成的只能是字符串。注意字典只对键进行连接
所以很多地方很多时候生成了元组、列表、字典后,可以用 join() 来转化为字符串。

字符串的占位符用法
return ‘(Person: %s, %s)’ % (self.name, self.gender)

思考在字符创中使用格式化:
print ‘I am a Person, my name is %s’ % “Yves”


数字运算:
两个整数 / // 都是整数
如果一个数是浮点数, / 和 // 时那么结果就是浮点数,除不净就舍去了后面的位数


条件表达式:
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

var1 = None
if var1:
print var1   #判断条件为False


方法中的可变参数:
https://kelvin.mbioq.com/what-does-kw-args-mean-in-python.html
*args是可变参数,args接收的是一个tuple;
**kw是关键字参数,kw接收的是一个dict


集合操作

Python中集合常用操作:
https://blog.csdn.net/u013573813/article/details/53712762

字典获取方法: 如果没有指定默认值,是不能使用print 语句打印的,否则会报错
collection = {}
print collection.get(“key1”, “default_value_1”)


函数式编程: (内置函数的使用场景)
filter
sorted

关于类结构
比如定义类中的方法职工的self是什么意思?
self

常见问题:
Python内置的函数都存放在哪里?
在这里插入图片描述

在Python 中那些需要导入模块,那些不需要导入模块?
内置的函数是不是就不需要导入模块? 是
即使是导入了模块,还需要些模块名称 + 方法才能正确的使用? 是

在Python中如何优雅的空值None进行判断, 正向判断和反向判断
在Python中如何优雅的判断一个字符串是否None 是否为空, 正向判断,反向判断
比如判断一个字符串不能为None 也不能是空串:

在Python中如何定义类,使用类

2.在Python中的main方法如何编写
http://codingpy.com/article/guido-shows-how-to-write-main-function/


Python的访问权限
XXX 私有属性,外部不可访问
XXX 特殊属性,外部可访问
_XXX 外部可访问 以单下划线开头的属性"_xxx"虽然也可以被外部访问,但是,按照习惯,他们不应该被外部访问。
Python对属性权限的控制是通过属性名来实现的,如果一个属性由双下划线开头(
),该属性就无法被外部访问
但是,如果一个属性以"xxx"的形式定义,那它又可以被外部访问了,以"xxx"定义的属性在Python的类中被称为特殊属性,有很多预定义的特殊属性可以使用,通常我们不要把普通属性用"xxx"定义。

可见,当实例属性和类属性重名时,实例属性优先级高,它将屏蔽掉对类属性的访问。
可见,千万不要在实例上修改类属性,它实际上并没有修改类属性,而是给实例绑定了一个实例属性。


Python的语言特性:

1.参数可以是函数
2.返回结果也可以是函数 (主要用来延迟执行结果)
3.函数里面可以定义函数
4.Python里面有函数和方法概念
5.Python中存在多继承
函数内部也可以调用函数: (return_function不带括号则返回函数)

def calc_prod():
    def return_function():
        print "return_function"
        pass

    return return_function()

https://www.imooc.com/code/6054


代码重构:
F5 赋值文案
F6 移动文件
Shift + F6 重命名文件
control + F6 重构方法和参数
参考: https://blog.csdn.net/Haiyang_Duan/article/details/79078328


Python中的闭包:
像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。
闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变
闭包使得局部变量在函数外被访问成为可能。
维基百科说明:
在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。
https://www.imooc.com/code/6059


Python中函数与方法的区别:
函数 是直接下载模块中的
方法 是定义在类中的,每个方法的第一个参数必须是指代本身self(名称可以更改)


lambda表达式
冒号:前面是参数,冒号后面是函数体,函数体计算的结果是返回值
lambda x, y: -cmp(x, y)

包和模块
文件系统中 包相当于目录
模块是xx.py文件

导入的是模块也就是导入xx.py文件,由于在不用的py文件中可能存在相同的变量名和方法名,所有在调用的时候需要写全模块名称.


Python远程调试
https://blog.csdn.net/pipisorry/article/category/2114189
alt+enter万能键,不同场景有不同的表现方式,在还没import(install)模块名上使用会import(install)相对应的模块,在方法名上使用补注释,在测试中使用帮你补充断言代码……不管出错了不知道怎么办,知道怎么办想这么办时都按下这个快捷键,有惊喜
control + shift + alter +N 信号量收索: 文件,类,方法 都可以搜索

ctrl+alt+L,格式化代码

control + Q 查询简要文档说明视图操作 view -->control + Q

关于Python的版本兼容处理(导入Json模块)

try:
    import json
except ImportError:
    import simplejson as json
print json.dumps({'python':2.7})


Python注释
Python注释 (在类或者方法定义下的第一行) 确保对模块, 函数, 方法和行内注释使用正确的风格,都是使用三个双引号

class Person(object):
    """ Person Class type """
    def __init__(self, name, gender, birth, **kv):
        """ Person __init__ method """
        self.name = name
        self.gender = gender
        self.birth = birth
        for k, v in kv.iteritems():
            setattr(self, k, v)
        pass


foo = Person('Xiao Ming', 'Male', '1990-1-1', job='Student')
print foo.__doc__
print foo.__init__.__doc__

参考: http://www.runoob.com/w3cnote/google-python-styleguide.html


Python的异常处理机制
所有空白字符分隔
re.split("\s+", line_str, maxsplit=1)

问题:
python – 为什么str.split不接受关键字参数?
https://codeday.me/bug/20171226/111919.html
https://blog.csdn.net/hawkerou/article/details/53518154 (str和re的split对比)


Python逻辑运算符(Bool 取反)
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u011479200/article/details/87893820