Python学习笔记--基础篇2
模块
在python中用某个模块中的函数时,首先必须将其引入。例如,要用math模块中的函数,就必须使用下面这条import语句:
>>>import math
只要引入了某个模块,就可以用内置函数help来查看其所包含的函数了。
>>>help(math)
使用模块中的函数,通过点操作符“.”,将模块名跟函数名连接起来,显式的告诉Python应该去math模块中寻找该函数。
>>>math.sqrt(9)
3.0
为什么必须将函数名跟模块名连接到一起呢?那是因为可能会有多个模块都含有相同名称的函数。只要引入了某个模块,它就会一直驻留在内存中,直到程序结束为止。其实在程序运行的过程中,也有办法“反引入”某个模块(即将其从内存中抹掉),还可以重新引入更新过的模块。但是这些办法很少有人使用,停止程序并重启显然要简单许多。
模块不仅仅只能含有函数,例如math模块中还定义了一些诸如pi之类的变量。引入模块之后,就可以使用这些变量了,用法跟其他变量一样。
Python允许精准地引入某个模块中所需的东西,例如:
>>>from math import sqrt, pi
>>>sqrt(9)
3.0
当两个模块含有同名函数时,这种做法一样会引起一些问题。当两次引入不同模块的同名函数时,后者将会替换掉前者。
定义自己的模块
每个Python文件都可以用作为一个模块。模块的名字就是文件的名字,只是没有.py这个部分而已。
__builtins__模块
Python的内置函数实际上位于一个名为_builtins_的模块中。名称两边的双下划綫表示这是Python的组成部分。通过help(__builtins__)可以看到这个模块具体都有什么内容,如果想看到一个目录,可以使用dir.
>>>dir(__builtins__)
使用__main__
Python在每个模块中都定义了一个叫做__name__的特殊变量。假设在echo.py中放入下列代码:print "echo:__name__ is", __name__
运行echo.py文件,输出为:echo: __name__ is __main__。即这个模块就是主程序。
当只是引入echo.py而不是直接运行它
>>>import echo
echo: __name__ is echo
若仅引用这个模块而不做其他任何事情,代码如下:
import echo
print "After import, __name__ is", __name__, "and echo.__name__ is", echo.__name__
运行上述代码,将会产生以下结果:
echo: __name__ is echo
After import, __name__ is __main__ and echo.__name__ is echo
使用以下代码判断模块是否是主程序:
if __name__ == "__main__":
print " I am the main program"
else:
print "Something is importing me"
对象和方法
方法的用法和函数的用法非常类似,只不过方法的各种功能都是针对其所属的那个东西的。
常用的字符串方法
方法 | 说明 |
capitalize() | 返回字符串的首字符大写版本 |
find(s) | 返回字符串中首次出现参数s的索引,如果字符串中没有参数s则返回-1 |
find(s, beg) | 返回字符串中索引beg之后首次出现参数s的索引,如果字符串中索引beg之后没有参数s则返回-1 |
find(s,beg, end) | 返回字符串中索引beg与end之间首次出席那参数s的索引,如果字符串中索引beg与end之间么有参数s则返回-1 |
islower() | 测试所有字符是否均为小写形式 |
isupper() | 测试所有字符是否均为大写形式 |
lower() | 将所有字符转换为小写形式并返回 |
replace(old, new) | 将字符串中所有子串old替换为new并返回 |
split() | 将空格分隔的子串以列表的形式返回 |
split(del) | 将del分隔的子串以列表的形式返回 |
strip() | 删除字符串两端的空白符并返回 |
strip(s) | 删除字符串中s并返回 |
upper() | 将所有字符转换为大写形式并返回 |
swapcase方法是将小写转换为大写,将大写转换为小写。
>>>'Computer Science'.swapcase()
'cOMPUTER sCIENCE'
拥有方法的叫做对象,Python中的所有东西都是对象,就连数字0也不例外。
>>>help(0)
Help on int object: