切片对象:
例子:
In [13]: l = [1,23,4,5,5,6,8]
In [14]: l[::1]
Out[14]: [1, 23, 4, 5, 5, 6, 8]

In [15]: l[::2]
Out[15]: [1, 4, 5, 8]

In [16]: l[::3]
Out[16]: [1, 5, 8]

In [17]: l[1:4]
Out[17]: [23, 4, 5]

检查类型(isinstance函数的使用)
isinstance()接受一个元组对象为参数
例子:
In [68]: def displayNumType(num):
...: print num,'is',
...: if isinstance(num,(int,long,float,complex,bool,str,list,tuple)):
...: print 'a number of type:',type(num).__name__
...: else:
...: print 'not exists'
...:

In [69]: displayNumType('str')
str is a number of type: str

In [70]: displayNumType([1,23,3,4])
[1, 23, 3, 4] is a number of type: list

In [71]: displayNumType(99)
99 is a number of type: int

In [72]: displayNumType(88.23)
88.23 is a number of type: float

In [73]: displayNumType(True)
True is a number of type: bool

值比较:
<,>,<=,>=,==,!=
对象比较:
is,is not
布尔操作符:
not,and,or

列表,元组,字典都是容器类型
以更新模型为标准的类型分类:
可变类型:列表,字典
不可变类型:数字,字符串,元祖
通过内建函数id()来确认对象身份在两次赋值后是否变化
例子:
In [74]: id(a)
Out[74]: 66969152

In [75]: q = 'xxx'

In [76]: id(q)
Out[76]: 65543608

In [77]: q='xxxxxx'

In [78]: id(q)
Out[78]: 67362240

In [79]: ql = [1,23,4,1,4]

In [80]: id(ql)
Out[80]: 67150032

In [81]: ql.append('name')

In [82]: ql
Out[82]: [1, 23, 4, 1, 4, 'name']

In [83]: id(ql)
Out[83]: 67150032

访问模型:根据访问我们存储的数据的方式对数据类型进行分类
访问模型共有三种方式:直接获取,顺序,和映射
序列类型是指容器内的元素从0开始的索引顺序访问,一次访问一个或者多个,也就是切片(slice)。
映射类型类似序列的索引属性,不过他的索引并不是使用顺序的数字偏移量取值,它的元素无序存放,通过一个唯一的键来访问,它容纳的是哈希键-值得集合。

以访问模型为标准的类型分类:
分类 python类型
直接访问 数字
顺序访问 字符串,列表,元组
映射访问 字典

os.walk方法

os模块提供的walk方法很强大,能够把给定的目录下的所有目录和文件遍历出来。

方法:os.walk(path),遍历path,返回一个对象,他的每个部分都是一个三元组,('目录x',[目录x下的目录list],目录x下面的文件)

import os
def walk_dir(dir,fileinfo,topdown=True):
for root, dirs, files in os.walk(dir, topdown):
for name in files:
print(os.path.join(name))
fileinfo.write(os.path.join(root,name) + '\n')
for name in dirs:
print(os.path.join(name))
fileinfo.write(' ' + os.path.join(root,name) + '\n')
dir = raw_input('please input the path:')
fileinfo = open('list.txt','w')
walk_dir(dir,fileinfo)

python之list,tuple,str,dic简单记录(二)的更多相关文章

  1. python之list,tuple,str,dic简单记录(一)

    list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.列表中的项目.列表中的项目应该包括在方括号中,这样python就知道你是在指明一个列表.一旦你创建了一个列表,你就可以添加 ...

  2. python通过cx_oracle操作数据库过程简单记录

    1.环境配置 环境配置过程中,需要关注软件版本是否一致,主要包括:oracle客户端版本.cx_oracle版本.python版本: 2.操作记录 (1)验证环境是否正常:(无报错即为正常) impo ...

  3. python 3+djanjo 2.0.7简单学习(二)--创建数据库和模型

    我们紧接上次,这里将建立数据库,创建第一个模型提示:这里我们不需要去一直启动,django会在我们ctrl+s的时候自动刷新并启动服务,很方便吧  1.数据库配置 现在,打开 vote_mysite/ ...

  4. Python全栈工程师系列学习之学习记录

    @ 目录 前言 Day 01 一.python的历史和种类 二.安装python解释器以及配置环境变量 三.变量.常量和注释 Day 02 Day 03 Day 04 Day 05 Day 06 一. ...

  5. 孤荷凌寒自学python第五十三天使用python写入和修改Firebase数据库中记录

     孤荷凌寒自学python第五十三天使用python写入和修改Firebase数据库中记录 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数 ...

  6. JSP简单记录

    JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Se ...

  7. Python基本数据类型之str

    一.创建 s = "morra" s = str("morra") #str()这种方法会自动找到str类里的_init_方法去执行 ------------- ...

  8. OpenCV安装配置的简单记录

    在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...

  9. 完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能

    #!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能'''try: a=int(raw_input(" ...

随机推荐

  1. java 常用的几个配置

    1.保存代码格式化,打勾即可 2.如何让eclipse像vs那样自动提示,在打勾的地方加入 abcdefghijklmnopqrstuvwxyz.即可

  2. Learning PHP Design Patterns

    Learning PHP Design Patterns CHAPTER 1 Algorithms handle speed of operations, and design patterns ha ...

  3. Redis核心解读(转)

    原文:Redis核心解读 Redis是知名的键值数据库,它广泛用于缓存系统.关于Redis的信息已经不用我多介绍了.这个系统的Redis文章主要从另外一个角度关注,Redis作为一个开源项目,短短2W ...

  4. eclipse欺骗了我

    Java源文件(.java)和Java的字节码文件(.class)跟 package 是个什么关系? 平时使用 eclipse 的时候,发现 .java 文件目录必须和 package 包名保持一致, ...

  5. day5笔记 列表 list 增删改查

    列表的使用 一.索引和切片 # 索引和切片,用法与字符串一样 l = [1,2,3,'af','re',4,'45'] print(l[0]) print(l[3]) print(l[-1]) # ' ...

  6. restful API(转自阮一峰)

    RESTful API 设计指南   网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不 ...

  7. 第三课 Makefile文件的制作(上)

    1.序言: 前面的课程讲解了从gcc编译过程到其实践,大家可以看到其实在这些步骤中有些是可以简化编译的,但由于参数多以及项目中文件数量多的原因难免会造成错误甚至是浪费大量的时间在这编译上,为此linu ...

  8. JavaScript:隐藏Url中的参数

    <script type="text/javascript"> function submitForm(url, data) { var eleForm = docum ...

  9. System.Linq.Dynamic 动态查询

    安装 VS->工具栏->NuGet程序管理器,System.Linq.Dynamic 注意: 使用动态查询必须先调用AsQueryable()方法,因为动态扩展仅适用于实现IQueryab ...

  10. 【Python】进程和线程

    多进程 多线程 ThreadLocal 进程vs线程 分布式进程 Top 学习廖老师的py官网的笔记 多任务的实现方式有三种方式: 1.多进程 2.多线程 3.多进程+多线程(这种比较复杂,实际很少采 ...