搜档网
当前位置:搜档网 › python 列表(list)操作

python 列表(list)操作

python 列表(list)操作
python 列表(list)操作

列表在python中感觉是最灵活的有序集合对象类型,有点像其他语言的数组的类型

列表可以嵌套,索引和分片操作

嵌套:l3 = ['a',['b','cc']]

索引:l3[1]

分片:l3[2:4]

已知列表:a = [1,2,3,4,5]

python list 索引:

列表索引的下标默认是从第0个开始的,比如我们需要获取第1个元素1,那我们可以用a[0].如果需要获取

最后一个元素,那可以通过a[-1]。

1 append()方法

向列表的尾部插入数据

有点像push操作

它可以push大部分数据,比如数字,字符串到列表里,

比如:

a.append(6)

a.append(7)

a.append([1,3])

如果你要进行列表的合并的话,用下面的extend方法

2 extend()方法

b = ['a','b']

a.extend(b)

print a

输出列表a的结果是[1,2,3,4,5,a,b]

3 insert()方法

比如

a.insert(1,66)

输出结果是[1, 66, 2, 3, 4, 5, 'a', 'b']

4 remove()方法

a.remove(66)

输出的结果是:[1, 2, 3, 4, 5, 'a', 'b']

删除列表里面指定的值,如果没有的话,报错:

Traceback (most recent call last):

File " ", line 1, in

ValueError: list.remove(x): x not in list

4 pop方法

a.pop()

输出的结果是'b'

a.pop(2)

输出的结果是3

如果你没有指定参数的话,默然是返回列表的最后一个字符,如果指定的话,返回当前指定的索引的值

5 index方法

a.index(2)

发现了一个很奇怪的问题,我直接输出a.index(0)就会报错,因为index方法在取值的时候,有个判断元素是否存在,如果不存在则抛出异常。

6 python列表查找

我们可以通过in的方法来进行查找。如果需要查找的值在列表里,则返回true,否则返回false

7 判断python列表为空:

判断列表为空有两种方法,一个是通过len(列表),然后看返回结果,还有一个是通过if 判断,如果是空列表,则返回false

8 python 列表长度:

通过len(列表)就可以得到结果

9 python 列表变量循环:

直接用for in 迭代列表输出就行。

10 python 列表随机选值:

可以通过import random模块,然后随机生成一个整数,在到列表里面去取数据,但是如果超过索引范围,则会报错。

11 python 列表排序:

直接通过列表自身的sort()方法就能对列表进行排序,注意这个方法返回none,是原地的修改列表

python列表(list)操作

列表在python中感觉是最灵活的有序集合对象类型,有点像其他语言的数组的类型 列表可以嵌套,索引和分片操作 嵌套:l3 = ['a',['b','cc']] 索引:l3[1] 分片:l3[2:4] 已知列表:a = [1,2,3,4,5] python list 索引: 列表索引的下标默认是从第0个开始的,比如我们需要获取第1个元素1,那我们可以用a[0].如果需要获取 最后一个元素,那可以通过a[-1]。 1 append()方法 向列表的尾部插入数据 有点像push操作 它可以push大部分数据,比如数字,字符串到列表里, 比如: a.append(6) a.append(7) a.append([1,3]) 如果你要进行列表的合并的话,用下面的extend方法 2 extend()方法

b = ['a','b'] a.extend(b) print a 输出列表a的结果是[1,2,3,4,5,a,b] 3 insert()方法 比如 a.insert(1,66) 输出结果是[1, 66, 2, 3, 4, 5, 'a', 'b'] 4 remove()方法 a.remove(66) 输出的结果是:[1, 2, 3, 4, 5, 'a', 'b'] 删除列表里面指定的值,如果没有的话,报错: Traceback (most recent call last): File " ", line 1, in ValueError: list.remove(x): x not in list 4 pop方法 a.pop() 输出的结果是'b' a.pop(2) 输出的结果是3 如果你没有指定参数的话,默然是返回列表的最后一个字符,如果指定的话,返回当前指定的索引的值 5 index方法 a.index(2)

Python OS模块(常见文件操作示例)

Python常见文件操作示例 2. 3. os.path 模块中的路径名访问函数 4. 分隔 5. basename() 去掉目录路径, 返回文件名 6. dirname() 去掉文件名, 返回目录路径 7. join() 将分离的各部分组合成一个路径名 8. split() 返回(dirname(), basename()) 元组 9. splitdrive() 返回(drivename, pathname) 元组 10. splitext() 返回(filename, extension) 元组 11. 12. 信息 13. getatime() 返回最近访问时间 14. getctime() 返回文件创建时间 15. getmtime() 返回最近文件修改时间 16. getsize() 返回文件大小(以字节为单位) 17. 18. 查询 19. exists() 指定路径(文件或目录)是否存在 20. isabs() 指定路径是否为绝对路径 21. isdir() 指定路径是否存在且为一个目录 22. isfile() 指定路径是否存在且为一个文件 23. islink() 指定路径是否存在且为一个符号链接 24. ismount() 指定路径是否存在且为一个挂载点 25. samefile() 两个路径名是否指向同个文件 26. 27. os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false 28. os.path.isfile(name):判断name是不是一个文件,不存在name也返回false 29. os.path.exists(name):判断是否存在文件或目录name 30. os.path.getsize(name):获得文件大小,如果name是目录返回0L 31. os.path.abspath(name):获得绝对路径 32. os.path.normpath(path):规范path字符串形式 33. os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在) 34. os.path.splitext():分离文件名与扩展名 35. os.path.join(path,name):连接目录与文件名或目录 36. os.path.basename(path):返回文件名 37. os.path.dirname(path):返回文件路径 38. 39. 40. os模块中的文件操作: 41. os 模块属性

Python中执行系统命令常见的几种方法

Python中执行系统命令常见的几种方法 (1)os.system #这个方法是直接调用标准C的system()函数,仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息。 os.system(command)->exit_status Execute the command(a string)in a subshell. #如果再命令行下执行,结果直接打印出来 (2)os.popen #该方法不但执行命令还返回执行后的信息对象,是通过一个管道文件将结果返回。 popen(command[,mode='r'[,bufsize]])->pipeOpen a pipe to/from a command returning a file object. 例如: 好处在于:将返回的结果赋于一变量,便于程序的处理。 (3)使用模块commands模块 (status,result)=commands.getstatusoutput(cmd) status返回命令执行的返回值 result返回命令执行结果

注意1:在类unix的系统下使用此方法返回的返回值(status)与脚本或命令执行之后的返回值不等,这是因为调用了os.wait()的缘故,具体原因就得去了解下系统wait()的实现了。需要正确的返回值(status),只需要对返回值进行右移8位操作就可以了。 注意2:当执行命令的参数或者返回中包含了中文文字,那么建议使用subprocess。 (4)使用模块subprocess Subprocess是一个功能强大的子进程管理模块,是替换os.system,os.spawn*等方法的一个模块。 Class subprocess.Popen(args,bufsize=0,executable=None,stdin=None,stdout=None, stderr=None,preexec_fn=None, close_fds=True,shell=False,cwd=None,env=None,universal_newlines=False, startupinfo=None, creationflags=0,restore_signals=True,start_new_session=False,pass_fds=()) 有丰富的参数可以进行配置,可供我们自定义的选项多,灵活性高。之前我使用os.system 的时候遇到文件描述符被子进程继承的问题,后来通过close_fds=False这个参数来解决的。

《Python程序设计》习题与答案

《Python程序设计》习题与参考答案 第1章基础知识 1.1 简单说明如何选择正确的Python版本。 答: 在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高支持哪个版本的Python,是Python 2.x还是Python 3.x,最高支持到Python 2.7.6还是Python 2.7.9。这些问题都确定以后,再做出自己的选择,这样才能事半功倍,而不至于把大量时间浪费在Python的反复安装和卸载上。同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。 尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 3.x系列的最高版本(目前是Python 3.4.3)。 1.2 为什么说Python采用的是基于值的内存管理模式? 答: Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。 >>> x = 3 >>> id(x) 10417624 >>> y = 3 >>> id(y) 10417624 >>> y = 5 >>> id(y) 10417600 >>> id(x) 10417624 1.3 在Python中导入模块中的对象有哪几种方式? 答:常用的有三种方式,分别为 import 模块名[as 别名]

●from 模块名import 对象名[ as 别名] ●from math import * 1.4 使用pip命令安装numpy、scipy模块。 答:在命令提示符环境下执行下面的命令: pip install numpy pip install scipy 1.5 编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。例如用户输入1234,则程序输出12。(提示:使用整除运算。) 答: 1)Python 3.4.2代码: x = input('Please input an integer of more than 3 digits:') try: x = int(x) x = x//100 if x == 0: print('You must input an integer of more than 3 digits.') else: print(x) except BaseException: print('You must input an integer.') 2)Python 2.7.8代码: import types x = input('Please input an integer of more than 3 digits:') if type(x) != types.IntType: print 'You must input an integer.' elif len(str(x)) != 4: print 'You must input an integer of more than 3 digits.' else: print x//100

Python语句、函数与方法的使用技巧总结

Python语句、函数与方法的使用技巧总结 显示有限的接口到外部 当发布python第三方package时,并不希望代码中所有的函数或者class可以被外部import,在__init__.py中添加__all__属性,该list中填写可以import 的类或者函数名,可以起到限制的import的作用,防止外部import其他函数或者类。 #!/usr/bin/env python # -*- coding: utf-8 -*- from base import APIBase from client import Client from decorator import interface, export, stream from server import Server from storage import Storage from util import (LogFormatter, disable_logging_to_stderr, enable_logging_to_kids, info) __all__ = ['APIBase', 'Client', 'LogFormatter', 'Server', 'Storage', 'disable_logging_to_stderr', 'enable_logging_to_kids', 'export', 'info', 'interface', 'stream'] with的魔力

with语句需要支持上下文管理协议的对象,上下文管理协议包含__enter__和__exit__两个方法。with语句建立运行时上下文需要通过这两个方法执行进入和退出操作。 其中上下文表达式是跟在with之后的表达式,该表达式返回一个上下文管理对象。 # 常见with使用场景 with open("test.txt", "r") as my_file: # 注意, 是__enter__()方法的返回值赋值给了my_file, for line in my_file: print line 知道具体原理,我们可以自定义支持上下文管理协议的类,类中实现__enter__和__exit__方法。 #!/usr/bin/env python # -*- coding: utf-8 -*- class MyWith(object): def __init__(self): print "__init__ method" def __enter__(self):

python一些常用方法

1.list 方法 一、创建一个列表 只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示: 与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。 二、访问列表中的值 使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示: print "list1[0]: ", list1[0] print "list2[1:5]: ", list2[1:5] 以上实例输出结果: 三、更新列表 你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示: list = ['physics', 'chemistry', 1997, 2000]; print "Value available at index 2 : " print list[2]; list[2] = 2001; print "New value available at index 2 : " print list[2];

以上实例输出结果: 四、删除列表元素 可以使用del 语句来删除列表的的元素,如下实例: list1 = ['physics', 'chemistry', 1997, 2000]; print list1; del list1[2]; print "After deleting value at index 2 : " print list1; 以上实例输出结果: 五、Python列表脚本操作符 列表对+ 和* 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。如下所示: Python 表达式结果描述 len([1, 2, 3])3长度 [1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合 ['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']重复 3 in [1, 2, 3]True元素是否存在于列表中 for x in [1, 2, 3]: print x, 1 2 3迭代

Python中常见的数据结构可以统称为容器

Python中常见的数据结构可以统称为容器(container)。序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。 一、序列(列表、元组和字符串) 序列中的每个元素都有自己的编号。Python中有6种内建的序列。其中列表和元组是最常见的类型。其他包括字符串、Unicode字符串、buffer对象和xrange对象。下面重点介绍下列表、元组和字符串。 1、列表 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。 (1)、创建 通过下面的方式即可创建一个列表: 1 2 3 4list1=['hello','world'] print list1 list2=[1,2,3] print list2 输出: […hello?, …world?] [1, 2, 3] 可以看到,这中创建方式非常类似于javascript中的数组。 (2)、list函数 通过list函数(其实list是一种类型而不是函数)对字符串创建列表非常有效: 1 2list3=list("hello") print list3

输出: […h?, …e?, …l?, …l?, …o?] 2、元组 元组与列表一样,也是一种序列,唯一不同的是元组不能被修改(字符串其实也有这种特点)。(1)、创建 1 2 3 4 5 6t1=1,2,3 t2="jeffreyzhao","cnblogs" t3=(1,2,3,4) t4=() t5=(1,) print t1,t2,t3,t4,t5 输出: (1, 2, 3) (…jeffreyzhao?, …cnblogs?) (1, 2, 3, 4) () (1,) 从上面我们可以分析得出: a、逗号分隔一些值,元组自动创建完成; b、元组大部分时候是通过圆括号括起来的; c、空元组可以用没有包含内容的圆括号来表示; d、只含一个值的元组,必须加个逗号(,); (2)、tuple函数 tuple函数和序列的list函数几乎一样:以一个序列(注意是序列)作为参数并把它转换为元组。如果参数就算元组,那么该参数就会原样返回: 1t1=tuple([1,2,3])

Python常见数据结构整理

Python常见数据结构整理 2014年10月15日tenking阅读23 次 Python中常见的数据结构可以统称为容器(container)。序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。 一、序列(列表、元组和字符串) 序列中的每个元素都有自己的编号。Python中有6种内建的序列。其中列表和元组是最常见的类型。其他包括字符串、Unicode字符串、buffer对象和xrange对象。下面重点介绍下列表、元组和字符串。 1、列表 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。 (1)、创建 通过下面的方式即可创建一个列表: 1 2 3 4list1=['hello','world'] print list1 list2=[1,2,3] print list2 输出: […hello?, …world?] [1, 2, 3] 可以看到,这中创建方式非常类似于javascript中的数组。(2)、list函数

通过list函数(其实list是一种类型而不是函数)对字符串创建列表非常有效: 1 2list3=list("hello") print list3 输出: […h?, …e?, …l?, …l?, …o?] 2、元组 元组与列表一样,也是一种序列,唯一不同的是元组不能被修改(字符串其实也有这种特点)。(1)、创建 1 2 3 4 5 6t1=1,2,3 t2="jeffreyzhao","cnblogs" t3=(1,2,3,4) t4=() t5=(1,) print t1,t2,t3,t4,t5 输出: (1, 2, 3) (…jeffreyzhao?, …cnblogs?) (1, 2, 3, 4) () (1,)从上面我们可以分析得出: a、逗号分隔一些值,元组自动创建完成; b、元组大部分时候是通过圆括号括起来的; c、空元组可以用没有包含内容的圆括号来表示; d、只含一个值的元组,必须加个逗号(,);(2)、tuple函数

Python常见数据结构整理

Python常见数据结构整理 Python中常见的数据结构可以统称为容器(container)。序列(如列表和元组)、映射(如字典) 以及集合(set)是三类主要的容器。 一、序列(列表、元组和字符串) 序列中的每个元素都有自己的编号。Python中有6种内建的序列。其中列表和元组是最常见的类型。其他包括字符串、Unicode字符串、buffer对象和xrange对象。下面重点介绍下列表、元组和字符串。 1、列表 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。 (1)、创建 通过下面的方式即可创建一个列表: 输出: ['hello', 'world'] [1, 2, 3] 可以看到,这中创建方式非常类似于javascript中的数组。 (2)、list函数 通过list函数(其实list是一种类型而不是函数)对字符串创建列表非常有效: 输出: ['h', 'e', 'l', 'l', 'o'] 2、元组 元组与列表一样,也是一种序列,唯一不同的是元组不能被修改(字符串其实也有这种特点)。

输出: (1, 2, 3) ('jeffreyzhao', 'cnblogs') (1, 2, 3, 4) () (1,) 从上面我们可以分析得出: a、逗号分隔一些值,元组自动创建完成; b、元组大部分时候是通过圆括号括起来的; c、空元组可以用没有包含内容的圆括号来表示; d、只含一个值的元组,必须加个逗号(,); (2)、tuple函数 tuple函数和序列的list函数几乎一样:以一个序列(注意是序列)作为参数并把它转换为元组。如果参数就算元组,那么该参数就会原样返回: 输出: (1, 2, 3) ('j', 'e', 'f', 'f') (1, 2, 3) Traceback (most recent call last): File "F:\Python\test.py", line 7, in t4=tuple(123) TypeError: 'int' object is not iterable 3、字符串

python常用函数年初大总结

1.常用内置函数:(不用import就可以直接使用) help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像函数一样调用 repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝 eval_r(str) 表示合法的python表达式,返回这个表达式 dir(obj) 查看obj的name space中可见的name hasattr(obj,name) 查看一个obj的name space中是否有name getattr(obj,name) 得到一个obj的name space中的一个name setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object delattr(obj,name) 从obj的name space中删除一个name vars(obj) 返回一个object的name space。用dictionary表示 locals() 返回一个局部name space,用dictionary表示 globals() 返回一个全局name space,用dictionary表示 type(obj) 查看一个obj的类型 isinstance(obj,cls) 查看obj是不是cls的instance issubclass(subcls,supcls) 查看subcls是不是supcls的子类 类型转换函数 chr(i) 把一个ASCII数值,变成字符 ord(i) 把一个字符或者unicode字符,变成ASCII数值 oct(x) 把整数x变成八进制表示的字符串 hex(x) 把整数x变成十六进制表示的字符串

python文件和目录操作方法大全

python文件和目录操作方法大全(含实例) 这篇文章主要介绍了python文件和目录的操作方法,简明总结了文件和目录操作中常用的模块、方法,并列举了一个综合实例,需要的朋友可以参考下 一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。 1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 2.返回指定目录下的所有文件和目录名:os.listdir() 3.函数用来删除一个文件:os.remove() 4.删除多个目录:os.removedirs(r“c:\python”) 5.检验给出的路径是否是一个文件:os.path.isfile() 6.检验给出的路径是否是一个目录:os.path.isdir() 7.判断是否是绝对路径:os.path.isabs() 8.检验给出的路径是否真地存:os.path.exists() 9.返回一个路径的目录名和文件名:os.path.split() eg os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt') 10.分离扩展名:os.path.splitext() 11.获取路径名:os.path.dirname() 12.获取文件名:os.path.basename() 13.运行shell命令: os.system() 14.读取和设置环境变量:os.getenv() 与os.putenv() 15.给出当前平台使用的行终止符:os.linesep Windows使用'\r\n',Linux使用'\n'而Mac使用'\r' 16.指示你正在使用的平台:https://www.sodocs.net/doc/946827972.html, 对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' 17.重命名:os.rename(old,new) 18.创建多级目录:os.makedirs(r“c:\python\test”) 19.创建单个目录:os.mkdir(“test”) 20.获取文件属性:os.stat(file) 21.修改文件权限与时间戳:os.chmod(file) 22.终止当前进程:os.exit() 23.获取文件大小:os.path.getsize(filename) 二、文件操作方法大全: 1.os.mknod("test.txt") #创建空文件 2.fp = open("test.txt",w) #直接打开一个文件,如果文件不存在则创建文件 3.关于open 模式: 复制代码代码如下: w:以写方式打开, a:以追加模式打开(从EOF 开始, 必要时创建新文件) r+:以读写模式打开 w+:以读写模式打开(参见w ) a+:以读写模式打开(参见a ) rb:以二进制读模式打开

Python程序设计基础教案16--列表类型2

授课教案

授课教案附页 教学设计说明一、旧课回顾 创建一个列表,列表中的元素依次为:姓名、班级,并完成: (1)输出该学生的基本信息(姓名、班级); (2)增加语文成绩 (3)增加英语成绩和数学成绩 (4)将性别这一项插入到姓名后面 (5)修改班级为:software1801 (6)删除语文成绩 任务分析: ?题干: 创建一个列表。考察列表的概念:列表是将各种不同类型的元素用逗号分隔 开,放到一对中括号里构成的数据类型。 创建一个列表,列表中的元素依次为:姓名、班级。 代码示例: ?问题(1):输出该学生的基本信息(姓名、班级) 考察列表中元素访问方法。列表中第i个元素可以用l[i]表示,因此可以使用 for循环,因此访问列表的第0个到第len(l)-1个元素。 代码示例1: 补充:列表本身可以当做一个序列。因此,访问列表中的每一个元素还有另 一种方法。 代码示例2:

方法一:使用range( )产生一个整数序列,表示列表l中每个元素的在列表中的位置(标号),然后用l[i]表示第i个元素。 方法二:直接把列表l本身看做一个序列,此时循环变量i表示列表l中的第i个元素。 ?问题(2):增加语文成绩 考察列表中增加元素的方法。问题(2)仅增加语文成绩,即仅增加一个元素,使用l.append( )方法。 代码示例: ?问题(3):增加英语成绩和数学成绩 考察列表中增加元素的方法。可以使用两次l.append( )方法,依次增加英文成绩和数学成绩。也可以使用l.extend( )函数,将英文成绩和数学成绩作为一个新的列表直接追加都原列表中。 代码示例: ?问题(4):将性别这一项插入到姓名后面 考察l.insert( )的用法。l.insert(i,x):把x查到列表的第i个位置。 代码示例: ?问题(5):修改班级为:software1801 考察里列表元素的修改。l[i]=x:将列表中第i个元素修改为x。

PYTHON文件操作

一、python文件操作 1.import glob目录操作 查看目录内容: filelist=glob.glob(‘*.*’) filelist=glob.glob(‘c:\*’) 查看指定类型的文件: filelist=glob.glob(‘c:\*.sys’) 为了显示一个目录中的全部文件,可以使用如下所示的os.listdir函数: files=os.listdir(r’C:\hpl\scripting\src\py\intro’)#适用于Windows files=os.listdir(’/home/hpl/scripting/src/py/intro’)#适用于Unix files=os.listdir("d:\python26") files=os.listdir("c:\\") #跨平台版本: files=os.listdir(os.path.join(os.environ[’scripting’],’src’,’py’,’intro’)) files=os.listdir(os.curdir)#当前目录中的所有文件 files=glob.glob(’*’)+glob.glob(’.*’) 二、测试文件类型 我们知道,文件名、目录名和链接名都是用一个字符串作为其标识符的,但是给我们一个标识符,我们该如何确定它所指的到底是常规文件文件名、目录名还是链接名呢?这时,我们可以使用os.path模块提供的isfile函数、isdir函数和islink函数来达成我们的目标,如下所示: print myfile,’是一个’, if os.path.isfile(myfile): print’plain file’ if os.path.isdir(myfile): print’directory’ if os.path.islink(myfile): print’link’ 您还可以查找文件的日期及其大小: time_of_last_access=os.path.getatime(myfile) time_of_last_modification=os.path.getmtime(myfile) size=os.path.getsize(myfile) 三文件时间 time_of_last_access=os.path.getatime(myfile) time_of_last_modification=os.path.getmtime(myfile) size=os.path.getsize(myfile) 这里的时间以秒为单位,并且从1970年1月1日开始算起。为了获取以天为单位的最后访问日期,可以使用下列代码: import time#time.time()返回当前时间 age_in_days=(time.time()-time_of_last_access)/(60*60*24) 四文件详细信息 为了获取文件的详细信息,可以使用os.stat函数和stat模块中的其它实用程序来达到目的,如下: import stat

黑马程序员Python教程:Python列表的6种操作实例

在使用Python的时候,经常会用到列表,列表(list)就是动态数组,相当于C++标准库的Vector。但不同的是,Python的列表可以存储多种数据类型于一身,非常强大。 下面介绍几种Python列表的常用用法: 一. 列表的创建: 使用[] 把数据包含起来,便可以创建一个列表了。 1. [ ] 可以不包含任何数据,则表示创建一个空列表 >>> name = [] 2. [ ] 也可以包含多种数据类型的数据 >>> name = ["damao", 30, "ermao"] 二. 列表的打印: 1. 使用内置函数print() 便可打印整个列表里的数据” >>> print(name) ["damao", 30, "ermao"] 2. 当然也可以打印列表的某个下标的数据: >>> print(name[0]) damao 3. 也可以分片打印列表的某段下标的数据 >>> print(name[0:2])

['damao', 30] #注意,没有打印name[2]的数据:) 4. 如果想要分别打印列表里的每个数据,只需要一个for就可以搞定: >>> for each in name: print(each) damao 30 ermao 5. 当然也可以直接打印出列表内数据的个数: >>> print(len(name)) 3 三、列表的扩展: 1. 我们可以在列表末尾追加一个任意数据类型数据: >>> name.append(["daoluan", 666]) >>> print(name) ['damao', 30, 'ermao', ['daoluan', 666]] 2. 也可以在列表末尾追加一个列表里的所有数据: >>> name.extend(["sanmao", 10, "simao"]) >>> print(name)

python一些常用方法

1.list方法 一、创建一个列表 只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示: 与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。 二、访问列表中的值 使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示: print"list1[0]:",list1[0] print"list2[1:5]:",list2[1:5] 以上实例输出结果: 三、更新列表 你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示: list=['physics','chemistry',1997,2000]; print"Value available at index2:" print list[2]; list[2]=2001; print"New value available at index2:" print list[2];

以上实例输出结果: 四、删除列表元素 可以使用del语句来删除列表的的元素,如下实例: list1=['physics','chemistry',1997,2000]; print list1; del list1[2]; print"After deleting value at index2:" print list1; 以上实例输出结果: 五、Python列表脚本操作符 列表对+和*的操作符与字符串相似。+号用于组合列表,*号用于重复列表。如下所示: Python表达式结果描述 len([1,2,3])3长度 [1,2,3]+[4,5,6][1,2,3,4,5,6]组合 ['Hi!']*4['Hi!','Hi!','Hi!','Hi!']重复 3in[1,2,3]True元素是否存在于列表中 for x in[1,2,3]:print x,123迭代

python文件操作笔记

python文件操作笔记 文件操作:长期保存数据以便重复使用、修改和共享,必须将数据以文件的形式存储到外部存储介质或云盘中。按文件中数据的组织形式可以把文件分文本文件和二进制文本。 1.文本文件 文本文件存储的是常规字符串,由若干文本行组成,通常每行以换行符"\n"结尾。常规字符串是指记事本或其他文本编辑器能正常显示,编辑并且能够直接阅读和理解的字符串,如英文、汉字、数字字符串。 2.二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用记事本或其他普通文本处理软件直接编辑,通常需要专门的软件才能显示、修改编辑或执行。常见的图形文件、音频文件、可执行文件、资源文件、各种数据库文件等属于二进制文件。 python内置了文件对象,通过open()函数即可以指定的模式打开指定文件或创建文件对象,格式如下: 文件对象名=open (文件名,[打开方式,缓冲区]) 文件打开模式文件对象属性 模说明属性

r 读模式 closed 判断文件是否关闭,若文件关闭,则返 回True w 写模式 mode 返回文件的打开模式 a 追加模式 name 返回文件的名称 b 二进制模式(可与其他模式组合 使用) + 读写模式(可与其他模式组合使 用) 文件对象常用方法: 方法 功能说明 read([size]) 从文件中读取size 个字节 readline() 从文本文件中读取一行内容作为结果返回 readlines() 从文本文件中的每行文本作为一个字符串存入列表中,返回 该列表 seek(offset[,whence]) 把文件指针移动到新的位置,offset 表示相对于whence 的 位置 tell() 返回文件指针的当前位置 write(s) 把字符串s 的内容写入文件 writelns() 把字符串列表写入文本文件,不添加换行符

列表list——python

第 I 条列表: 节 1.01创建列表的方式: 1使用赋值运算符直接创建列表 1.1Listname=[元素1,元素2,……,元素n] 2创建空列表 3创建数值列表 节 1.02删除列表del: Is not defined 未被定义 注意:python自带垃圾回收机制,会自动销毁不用的列表,所以即使我们不手动删除,python 也会自动将其回收。 节 1.03访问列表元素:即获取列表中的内容 3种方法:1.直接使用print()输出2.索引Indexing 3.切片Slicing Ctrl +S 保存文件 F5 运行文件

节 1.04遍历列表 方法:1.直接使用for循环(只能输出元素的值) 2.使用for循环和enumerate()函数(需要索引值时) 写两行的: 节 1.05添加元素或列表: 向列表里添加元素所用函数:

1. append(加到列表末尾) Listname.append() 2.insert() (向列表中制定位置插入元素) 没有append的执行效率高 将一个列表添加到另一个列表中的函数extend() (加到原列表的后面) 节 1.06修改元素: 找到索引值,直接修改就行 list1 = ['长亭外','古道边','芳草碧连天'] list1[2] = '一行白鹭上青天' print(list1) 节 1.07删除元素 (a)根据索引删除 和删除列表相似,用del语句 del的使用:del listname[] (语句放前面) (b)根据元素值删除(不知道索引值时) 使用remove()方法 listname.remove() (方法放后面) 节 1.08对列表进行统计 (a)获取制定元素出现的次数count() Llistname.coount(obj) (b)获取制定元素首次出现的下标index() Listname.index(obj)

PYTHON语言常用语法摘要

Python语言常用语法 在Python中有4种类型的数——整数、长整数、浮点数和复数。 使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。 不要混合使用制表符和空格来缩进,因为这在跨越不同的平台的时候,无法正常工作。我强烈建议你在每个缩进层次使用单个制表符或两个或四个空格。 在Python中有三种控制流语句——if、for和while。 在Python中没有switch语句。你可以使用if..elif..else语句来完成同样的工作(在某些场合,使用字典会更加快捷。) Break:如果你从for或while循环中终止,任何对应的循环else块将不执行 函数通过def关键字定义。def关键字后跟一个函数的标识符名称,然后跟一对圆括号。圆括号之中可以包括一些变量名,该行以冒号结尾。接下来是一块语句,它们是函数体。下面这个例子将说明这事实上是十分简单的。 Global定义全局变量。在函数定义的形参名后加上赋值运算符(=)和默认值,从而给形参指定默认参数值。 重要 只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。 这是因为赋给形参的值是根据位置而赋值的。例如,def func(a,b=5)是有效的,但是def func(a=5,b)是无效的。 return语句用来从一个函数返回即跳出函数。我们也可选从函数返回一个值。 pass语句在Python中表示一个空的语句块。 Python有一个很奇妙的特性,称为文档字符串,它通常被简称为docstrings。DocStrings是一个重要的工具,由于它帮助你的程序文档更加简单易懂,你应该尽量使用它。你甚至可以在程序运行的时候,从函数恢复文档字符串! 文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。强烈建议你在你的函数中使用文档字符串时遵循这个惯例。调用时用print函数名.__doc__(双下划线)。 __name__属性 当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属性完成。 Dir()函数

【IT专家】Python文件操作及文件夹遍历

本文由我司收集整编,推荐下载,如有疑问,请与我司联系 Python文件操作及文件夹遍历 2013/12/07 808 ?os.getcwd() 得到当前工作目录,即当前Python脚本工作的目录路径os.listdir() 返回指定目录下的所有文件和目录名os.remove() 函数用来删除一个文件os.removedirs(r“c:\python”)删除多个目录os.path.isfile() 检验给出的路径是否是一个文件os.path.isdir() 检验给出的路径是否是一个目录os.path.isabs() 判断是否是绝对路径os.path.exists() 检验给出的路径是否真地存os.path.split() 返回一个路径的目录名和文件名eg: os.path.split(‘/home/swaroop/byte/code/poem.txt’) 结果:(‘/home/swaroop/byte/code’, ‘poem.txt’) os.path.splitext() 分离扩展名os.path.dirname() 获取路径名os.path.basename() 获取文件名os.system() 运行shell命令os.getenv() 与os.putenv()读取和设置环境变量os.linesep Windows使用’\r\n’,Linux使用’\n’而Mac使用’\r’ 给出当前平台使用的行终止符https://www.sodocs.net/doc/946827972.html, 对于Windows,它是’nt’,而对于Linux/Unix用户,它是’posix’指示你正在使用的平台os.rename(old,new)重命名os.makedirs(r“c:\python\test”)创建多级目录os.mkdir(“test”)创建单个目录os.stat(file)获取文件属性os.chmod(file)修改文件权限与时间戳os.exit()终止当前进程os.path.getsize(filename)获取文件大小 ?文件操作:os.mknod(“test.txt”) 创建空文件fp = open(“test.txt”,w) 直接打开一个文件,如果文件不存在则创建文件 ?关于open 模式: ?w以写方式打开,a以追加模式打开(从EOF 开始, 必要时创建新文件)r+以读写模式打开w+以读写模式打开(参见w )a+以读写模式打开(参见 a )rb以二进制读模式打开wb以二进制写模式打开(参见w )ab以二进制追加模式打开(参见a )rb+以二进制读写模式打开(参见r+ )wb+以二进制读写模式打开(参见w+ )ab+以二进制读写模式打开(参见a+ ) ? fp.read([size])#size为读取的长度,以byte为单位

相关主题