Python 学习笔记-初识python
1、 安装python3
我用的python版本是最新的3.3.2,在官网可以下载到!
先查看电脑上是否安装了python,在linux 和 mac Os 上会预装python2,但windows上没有,windows没有预装任何python的版本。
在windows下控制台键入:python
可以查看显示的python信息,查看详细的python信息,可以键入:python.exe -v
*如果电脑上没有安装任何python,可以在www.python.org上下载一个适合你的操作系统的python版本。最新版本的是python3.3.2
2、 Python都有什么?
Python安装完毕后,它包含以下成员。
1. IDLE:python的集成开发环境,它包含编辑器、调试工具、python shell以及python3的在线文档集。
2. Python Module docs
3. Python line
4. Python 离线文档(我这个最新版的没有中文的,如果英文不好,建议下子老版本)
3、使用IDLE
IDLE 提供了大量特性,我们目前只需要熟悉一些必要的功能,就能很好的利用IDLE
1、 tab键完成:先键入一些代码,然后按下tab键,IDLE会自动提供一些建议,帮助你完成语句,能够帮助你找到你忘记的内置函数。
2、 回退代码语句:按下alt + F,可以回退到IDLE中的之前输入的代码语句,按下alt + N 可以移至下一个代码语句。
3、 编辑回退的代码:一旦回退代码语句,还可以进行编辑,并使用箭头键切换语句,可以编辑之前的输入的语句,甚至是跨行的代码语句。
4、 调整IDLE首选项:允许按照你的爱好调整IDLE的默认行为。
4、 创建简单的python列表
1、 在数据的两边加引号,讲各行数据转换为字符窜
2、 用逗号讲列表项下一项分割开。
3、 在列表的两边加上开始和结束的中括号。
4、 使用赋值操作符讲这个列表赋值一个标示符。
5、简单列表的操作(append()、pop()、extend() 、remove()、insert()、len() )
>>> streamp = ["first","second","third","fouth","fifth"]
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'fifth']
>>> print(len(streamp)) //求列表的长度
>>> print(streamp[2]) //求指定索引的列表元素
third
>>> streamp.pop() //提取一个列表元素
'fifth'
>>> print(streamp)
['first', 'second', 'third', 'fouth']
>>> streamp.append("HEello") //在列表的末尾添加一个元素
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello']
>>> streamp.extend(["eigth","tenth"]) //将列表与其他列表链接,扩充列表
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello', 'eigth', 'tenth']
>>> streamp.remove("tenth") //移除列表中指定的元素
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello', 'eigth']
>>> streamp.insert(2,"ninth") //在指定列表位置插入一个元素
>>> print(streamp)
['first', 'second', 'ninth', 'third', 'fouth', 'HEello', 'eigth']
>>> movies = ["1","2","3",["4","5",["6","7","8"]]]
>>> print(movies)
['1', '2', '3', ['4', '5', ['6', '7', '8']]]
>>> for each_item in movies:
print(each_item)
1
2 //列表是一个集合,可以存储任何类型,也可以存储列表
3 //但出现一个问题,他只会打印第一层的数据。
['4', '5', ['6', '7', '8']] 。
for eachitem in movies:
if isinstance(eachitem,list):
for subeachitem in eachitem:
print(subeachitem,list)
else:
print(eachitem)
1
2
3
4 <class 'list'>
5 <class 'list'>
['6', '7', '8'] <class 'list'> //还是存在问题,不能完美的讲所有的嵌套列表打印出来。
6、在python中创建自定义函数:
定义函数的格式:
def 函数名 (参数): //引入关键字def,参数表示可选的
函数代码组
什么时候需要函数?当你的代码中出现多次重复或者形式一样的代码(功能一样)的代码时,你就需要考虑是否创建一个函数了。
>>> def print_vol (this_list): //定义一个递归函数处理深层嵌套的列表打印问题
for each_item in this_list:
if isinstance (each_item,list):
print_vol(each_item)
else:
print(each_item)
>>> print_vol(movies)
1
2
3
4
5
6
7
8 //通过定义函数,我们的代码变得漂亮了,可读性更高了。
*在声明变量时,我们不必说明python的类型,因为python 变量标示符没有类型
*列表中可以混合不同类型是的数据,因为python是一个高层集合。
*for循环是可以收缩的的,使用于任意大小的列表
*列表可以自由的伸缩,从这方面来说,列表是动态的,但列表不是万能的,它不能访问一个不存在的数据项,如果非要访问,会返回一个indexError作为响应,此时就表示越界了。
*在python中,单引号和双引号都可以创建字符窜,而且创建的字符窜没有任何区别。但有一条规则,就是引号必须配套使用,不能在一个字符窜中使用混合的引号形式表示。如果要在字符窜中使用引号怎么办?你有两个选择,第一你可以使用转义字符“\”,第二,你可以使用单引号(或者双引号)引起这个字符窜。
*是否可以用任意的字符窜命名标示符?不行,python遵循其他编程语言一样的规则,名字可以是以一个字母字符或者一个下划线开头,接下来可以包括任意个字符、数字、下划线。而且不允许使用奇怪的字符,例如“%”
*python是否对大小写敏感?是的,python属于敏感型,区分大小写字母,当标示符的大小写错误时,会返回一个nameError的错误。
*如何查询python中的BIF(build-in function)?在shell中键入dir(__builtins__)可以查看python提供的内置函数列表。如果想查看某个函数的功能,可以使用help(函数名)。
*python的递归是否会有深度呢?python3默认递归深度不能超过100