在程序中定义函数可以实现代码重用。但当你的代码逐渐变得庞大时,你可能想要把它分割成几个文件,以便能够更简单地维护。同时,你希望在一个文件中写的代码能够被其他文件所重用,这时我们应该使用模块(module)。
一、导入模块
在Python中,一个.py
文件就构成一个模块。一个模块中的定义可以导入(import)到另一个模块或主模块。
比如你可以通过内置模块platform来查看你当前的操作平台信息:
李松
在程序中定义函数可以实现代码重用。但当你的代码逐渐变得庞大时,你可能想要把它分割成几个文件,以便能够更简单地维护。同时,你希望在一个文件中写的代码能够被其他文件所重用,这时我们应该使用模块(module)。
在Python中,一个.py
文件就构成一个模块。一个模块中的定义可以导入(import)到另一个模块或主模块。
比如你可以通过内置模块platform来查看你当前的操作平台信息:
在写Python过程中,经常会遇到对象的拷贝,如果不理解浅拷贝和深拷贝的概念,你的代码就可能出现一些问题。所以,在这里按个人的理解谈谈它们之间的区别。
在《Python FAQ1》一文中,对赋值已经讲的很清楚了,关键要理解变量与对象的关系。1
2
3
4
5>>> a = [1, 2, 3]
>>> b = a
>>> print(id(a), id(b), sep='\n')
139701469405552
139701469405552
一个程序可以从键盘读取输入,也可以从文件读取输入;而程序的结果可以输出到屏幕上,也可以保存到文件中便于以后使用。本文介绍Python中最基本的I/O函数。
读取键盘输入
内置函数input([prompt])
,用于从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符):
正如Python FAQ1附录中说的, Python中任何值都是一个对象,所以任何类型(int、str、list…)都是一个类。而类就必然有它的方法或属性,我们要记下这么多类的所有方法显然是不可能的,这里介绍两个小技巧:
>>> dir(list)
。>>> help(int)
。在Python的基本数据类型中,我们初步了解了list列表,也介绍了列表是Python 中使用最频繁的数据类型。本文将进一步深入学习列表的使用。
在C/C++中,传值和传引用是函数参数传递的两种方式。由于思维定式,从C/C++转过来的Python初学者也经常会感到疑惑:在Python中,函数参数传递是传值,还是传引用呢?
看下面两段代码:1
2
3
4
5
6
7def foo(arg):
arg = 5
print(arg)
x = 1
foo(x) # 输出5
print(x) # 输出1
函数(function)是组织好的、可重复使用的、具有一定功能的代码段。函数能提高应用的模块性和代码的重复利用率,Python中已经提供了很多内建函数,比如print(),同时Python还允许用户自定义函数。
定义函数使用关键字def
,后接函数名和放在圆括号( )中的可选参数列表,函数内容以冒号起始并且缩进。一般格式如下:1
2
3
4def 函数名(参数列表):
"""文档字符串"""
函数体
return [expression]
Python的流程控制语句包括:if条件语句、while循环语句、for循环语句、range函数以及break、continue、pass控制语句。这些语句在Python中的语义和在其他语言中是一样的,所以这里就只说它们的写法。
if语句是最常用的条件控制语句,Python中的一般形式为:
Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的“类型”是变量所指的内存中对象的类型。Python 3中有六个标准的数据类型:
本文主要先介绍这几种数据类型的定义和它们之间的联系与区别。
对于新手一般会遇到一个问题:学习Python 2还是Python 3呢? 对于我个人而言,我是个完全的新手,没有历史包袱,所以我直接学习Python 3。我相信在未来几年,Python 3会逐步取代Python 2成为主流。
Python是一门解释型、面向对象、动态数据类型的高级程序设计语言,更多的介绍看官方文档。Python让程序更加的紧凑、可读性更强,用 Python 写的程序通常比同样的C、C++或Java程序要短得多,这是因为以下几个原因: