return
返回一个值(数、字符串等)
代表虚无(None),代表变量没有值,如果有值那他的值就是None
文档字符串(DocStrings)
def print_max(x, y):
''' Da xie ju hao. #以大写字母开头,句号结尾
#这里空一行
You write anything'''
x = int(x)
y = int(y)
if x > y:
print(x)
else:
print(y)
print(3, 5)
print(print_max.__doc__) #这样获取对象的__doc__属性
模块
模块是一个已经被编写好的对象A,你可以导入其他对象中B,就可以在B中使用对象A实现的功能。
sys.argv #这是一个列表,用来存储命令行参数
sys.path #包含导入模块的字典名称列表,如果第一个字符串是空的代表当前目录(模块???)也是sys。path的一部分。
.pyc 文件
作用:导入模块时速度更快,导入模块时一部分工作已经提前完成。
模块的__name__
每一个python模块的__name__都被定义,如果它与__main__相同,则代表这一模块是用户独立运行的(这个模块不是被导入的)
dir函数
dir() #返回当前对象所定义的名称列表,括号内如果有参数,则返回指定模块的名称列表。如果模块中有被导入的模块,则返回的名称列表包含导入的模块名称列表
如果对象是一个模块则返回函数名称,类和变量
vars() #效果类似于dir() ,但是不能对所有类都起作用
数据结构
列表(List) ,用方括号来表示,并在数据之间加上逗号。这一种可变的数据结构
[1, 2]
元组(Tuple),用圆括号表示,是一种不可变的数据结构(同一元组内数据的位置也不可变,啥都不能变)
(1, ) #元组中只有一个参数时要加一个逗号
字典(Dict),键值—值,键值不可变。字典内的数据不能以任何自动方式排序,只能使用之前手动排序。
a = {'s': 1, 'd':'c', 1:'s'} #访问时要注意a[1]将返回's'
序列(Sequence),进行资格测试和引用
a = ['b', 'c', 'd', 'e']
a[1:2] #进行引用,冒号前后不填数字将默认为0,这里将只返回'c'
a[::] #进行切片操作,默认步长为1
a[::-1]
a[1:1] #冒号前后的数字相同时,则返回空序列
这里有详细解释☞https://segmentfault.com/q/1010000001636741
集合(set),简单对象的无序集合,当序列中的项目存在与否比起次序或其出现的次数更为重要时,就是用集合。
bri = set(['a', 'b', 'c'])
引用,注意一个问题
a = [1, 2, 3]
b = a
这里如果对a或者b中的项目进行操作(增,删)print(a)和print(b)会得到相同的结果(指向同一内存),如果需要进行操作,则进行切片生成另一个对象