用的是windows的IDLE(python 3)

对象的认识:先创建一个list对象(用方括号)

 a = ['xieziyang','chenmanru']
a

对list中对象的引用

 a[0] # 表示列表a中的第一个对象

在列表的末尾添加一个对象

 a.append('xiemanru')
a.insert(0,'xiemanru1') # 在指定位置插入一个对象insert object before index

移除对象

a.remove('xiemanru')
a

for循环:

  movies = ['The Holy Grail','The Life of Brian','The Meaning of Life']
years = [1975,1979,1983]
k = 1
for time in years:
movies.insert(k,time)
k = k+2
movies

在列表中再插入一个列表:

 movies.insert(2,['Transformer',2007]

引用:

>>> movies[2][0]
'Transformer'

嵌套列表的打印:

 >>> for each_item in movies:
if isinstance(each_item,list): # 判断each_item是否为列表
for nested_item in each_item:
print(nested_item)
else:
print(each_item)

对于多重嵌套列表的打印:再添加一个列表

 >>> movies[2].insert(1,['阿甘正传',2010])
>>> movies
['The Holy Grail', 1975, ['Transformer', ['阿甘正传', 2010], 2007], 'The Life of Brian', 1979, 'The Meaning of Life', 1983]

定义函数:

 def print_it_all(the_list):  # 定义一个函数:def 函数名(参数):函数代码组
for each_item in the_list:
if isinstance(each_item,list):
print_it_all(each_item)
else:
print(each_item)

看看效果:

 >>> print_it_all(movies)
The Holy Grail
1975
Transformer
阿甘正传
2010
2007
The Life of Brian
1979
The Meaning of Life
1983

改进一下,打印的更好看:

 def print_it_all(the_list,level):
for each_item in the_list:
if isinstance(each_item,list):
print_it_all(each_item,level+1)
else:
for tab_stop in range(level):
print("\t",end = '')
print(each_item)

看一下结果:

 print_it_all(movies,0)
The Holy Grail
1975
Transformer
阿甘正传
2010
2007
The Life of Brian
1979
The Meaning of Life
1983

再添加一个参数控制是否缩进打印:

 def print_it_all(the_list,indent = False,level = 0):
for each_item in the_list:
if isinstance(each_item,list):
print_it_all(each_item,indent,level+1)
else:
if indent:
for tab_stop in range(level):
print("\t",end = '')
print(each_item)

看看结果怎么样:

 >>> print_it_all(movies)
The Holy Grail
1975
Transformer
阿甘正传
2010
2007
The Life of Brian
1979
The Meaning of Life
1983
>>> print_it_all(movies,indent = True)
The Holy Grail
1975
Transformer
阿甘正传
2010
2007
The Life of Brian
1979
The Meaning of Life
1983

看的书是head frist Python,挺适合初学者看的

以上代码也是参照上书内容,敲几遍就变成自己的了:)

欢迎大家来指教

Python学习笔记:第一次接触的更多相关文章

  1. python学习笔记--Django入门0 安装dangjo

    经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...

  2. 【python学习笔记】10.充电时刻

    [python学习笔记]10.充电时刻 任何python都可以作为模块倒入 *.pyc:平台无关的经过编译的的python文件, 模块在第一次导入到程序中时被执行,包括定义类,函数,变量,执行语句 可 ...

  3. python学习笔记(一)、列表和元祖

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.通用的序列操作 有几种操作适用于所有序列,包括索引.切片.相加.相乘和成员资格检查.另外,Pyt ...

  4. 近期Python学习笔记

    近期Python 学习笔记--一篇文入门python 作者:Pleiades_Antares(www.cnblogs.com/irischen) 写在前面的话 想学Python已经许久,一年多以前(应 ...

  5. Deep learning with Python 学习笔记(9)

    神经网络模型的优化 使用 Keras 回调函数 使用 model.fit()或 model.fit_generator() 在一个大型数据集上启动数十轮的训练,有点类似于扔一架纸飞机,一开始给它一点推 ...

  6. Python学习笔记_Python对象

    Python学习笔记_Python对象 Python对象 标准类型 其它内建类型 类型对象和type类型对象 Python的Null对象None 标准类型操作符 对象值的比較 对象身份比較 布尔类型 ...

  7. Python学习笔记之生成器、迭代器和装饰器

    这篇文章主要介绍 Python 中几个常用的高级特性,用好这几个特性可以让自己的代码更加 Pythonnic 哦 1.生成器 什么是生成器呢?简单来说,在 Python 中一边循环一边计算的机制称为 ...

  8. Python学习笔记之模块与包

    一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打 ...

  9. Python学习笔记之类与对象

    这篇文章介绍有关 Python 类中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中类的使用技巧 1.与类和对象相关的内置方法 issubclass(class, classinfo) ...

  10. Python学习笔记之从文件中读取数据

    10-1 Python 学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python 知识,其中每一行都以“In Python you can”打头.将这个文件命名为learnin ...

随机推荐

  1. 部署node节点组件

    部署node节点组件 mv kubelet kube-proxy /opt/kubernetes/bin chmod +x /opt/kubernetes/bin/* && chmod ...

  2. python之pymysql

    PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb. 安装: pip3 install PyMySQL 常用参数: pymysq ...

  3. 一个页面多图表展示(四个div的方式)

    效果如图所示,一个页面四个div,每个div里面展示相应的数据,因为这种效果会有点麻烦,而且不太雅观我就换了一种写法,一个div里面用四个图表,共用一个图例,先放上这个方式的效果图和源码,后期会再发布 ...

  4. Spring框架中<mvc:default-servlet-handler/>的作用

    优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...

  5. VMware三种网络模式详解

    转载自https://www.cnblogs.com/linjiaxin/p/6476480.html 好文章怕原始地址会不能用,转载到自己这里,感谢原作者的无私奉献. 由于Linux目前很热门,越来 ...

  6. linux的一些运维操作基本知识

    1 ~/.bashrc 这个可以认为是linux系统的启动项,每次启动的时候都会运行一些这里边的命令: 常见的有: alias rm='rm -i'//修改某些指令: export LD_LIBRAR ...

  7. 白盒测试之JUnit与SpringTest的完美结合

    通过白盒的单元测试可以验证程序基本功能的有效性,从而保证整个系统的质量,功在一时,利在千秋.目前80%以上公司后台还是基于java,尤其是后台大量采用Spring框架,我们这里采用Junit和Spri ...

  8. 小程序UI设计(1)-布局

    工欲善其事必先利其器.下面为大家介绍一款工具软件,如何做到轻松布局. 工具简介:小程序layout设计工具,可视化方式进行小程序UI设计.通过鼠标拖拽组件方式进行UI布局.工具提供符合微信视觉统一的模 ...

  9. C# 各个版本特性总结

    历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECM ...

  10. Acwing-121-赶牛入圈(二分, 二维前缀和,离散化)

    链接: https://www.acwing.com/problem/content/123/ 题意: 农夫约翰希望为他的奶牛们建立一个畜栏. 这些挑剔的畜生要求畜栏必须是正方形的,而且至少要包含C单 ...