==========列表基础===========

列表中的数据是可以被修改的。字典,元组,集合是不能被修改的。

>>> li1=['3edf','dafdas']

>>> li2=[li1,'23432cds']                            #list中还可以放list

>>> print li2

[['3edf', 'dafdas'], '23432cds']

>>> li3=[]

>>> len(li3)

0

>>> li2=['eaf','dvsd3',23234]

>>> print li2[0]                                      #通过index下标来访问list中的元素

eaf

>>> print li2[1]

dvsd3

>>> li4=['sadkfh',34873,'3dsaduf4']

>>> li4[0]=li4[0].replace('h','abc')                #替换列表中的某数据项

>>> print li4

['sadkfabc', 34873, '3dsaduf4']

>>> li4=['daf','ehwe',3454,'dfasf']

>>> li5=li4[1:3]            #list的切片,下标从1开始切片到3的位置所包含的元素,也就是12

>>> print li5

['ehwe', 3454]

>>> li5=li4[:]            #完全切给它了

>>> print li5

['daf', 'ehwe', 3454, 'dfasf']

>>> for lii in li5:            #for循环遍历list列表

print lii

daf

ehwe

3454

dfasf

>>> lii=iter(li5)                #用迭代器来取也可以

>>> print lii.next()

daf

===================list与C语言中数组的区别===========

>>> li6=['dgfd',343,'dfa','45hj']

>>> li7=['dfa',767,'34f']

>>> li8=li6+li7                                      #list可以通过+进行连接

>>> print li8

['dgfd', 343, 'dfa', '45hj', 'dfa', 767, '34f']

>>> id(li8)                                              #看li8的内存地址

47009664

>>> li8=(li6+li7)*2                                #list可以用*,乘法 等同于多个加法

>>> print li8

['dgfd', 343, 'dfa', '45hj', 'dfa', 767, '34f', 'dgfd', 343, 'dfa', '45hj', 'dfa', 767, '34f']

>>> id(li8)

47008944

这样子的动态赋值是不行的。

>>> li7.append('dfad')        #append()list列表的最后一个位置附加一个数据项,也可以是列表类型的

>>> print li7

[-1, 'dfa', 767, -2.5, '34f', 6, 'dfadf', 'dfad']

>>> li7.insert(0,-1)      #insert()在下标为n的位置放置m这个数据项。

>>> print li7

[-1, 'dfa', 767, '34f']

>>> li7.insert(3,-2.5)                   #-2.5放在下标为3的位置

>>> print li7

[-1, 'dfa', 767, -2.5, '34f']

>>> li9=list('www.baidu.com')               #list(str)将字符串转化为list列表类型

>>> print li9

['w', 'w', 'w', '.', 'b', 'a', 'i', 'd', 'u', '.', 'c', 'o', 'm']

>>> print li9.index('w')               #index()获取list中某数据第一次出现的位置下标

0

>>> li9.insert(li9.index('w'),'begin')

>>> print li9

['begin', 'w', 'w', 'w', '.', 'b', 'a', 'i', 'd', 'u', '.', 'c', 'o', 'm']

>>> li1=range(1,10)                  #range(n,m)返回一个从nm-1的整数列表

>>> print li1

[1, 2, 3, 4, 5, 6, 7, 8, 9]

>>>li2.extend(li3)    # list1.extend(list2)list2中的每个元素依次附加到list1的最后面

>>> print li2

[10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 15, 16, 17, 18, 19, 15, 16, 17, 18, 19]

>>> print li2

[10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 15, 16, 17, 18, 19, 15, 16, 17, 18, 19]

>>> li2.count(15)         #list.count(v)统计vlist中出现的次数,返回一个整数

3

>>> li2.remove(15)  删除#list.remove(n)  删除list中第一次出现的n(无返回值)

>>> print li2

[10, 11, 12, 13, 14, 16, 17, 18, 19, 15, 16, 17, 18, 19, 15, 16, 17, 18, 19]

>>>

>>> print li3

['a', 'b', 'c', 'd', 'e', 'f', 100]

>>> li3.__delitem__(3)   删除#list.__delitem__(index)删除某个位置上的元素

>>> print li3

['a', 'b', 'c', 'e', 'f', 100]

>>>

.__XXX__()这种书写方法的函数都是Python的内置函数,自己写函数的时候要尽量避免掉这种写法。

>>> print li3

['a', 'b', 'c', 'f', 100]

>>> cd=li3.pop(4)          删除#list.pop(index)listindex位置的值冒泡剔出,返回index位置的值

>>> print cd

100

>>> print li3

['a', 'b', 'c', 'f']

>>> li4=range(0,11)

>>> print li4

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

>>> li4.reverse()   #list.reverse()  list逆序排列,没有返回值,直接将list更改了

>>> print li4

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

>>> print li4

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

>>> li4=li4[::-1]   #通过切片也可以实现逆序

>>> print li4

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

===============列表与函数==============

#coding:utf-8

def mycount(list):

i=len(list)-list.count('.')

return i

s='wwwbaidu.cofgsm'

list1=list(s)

print 'list1',list1

print '字符串中出了.之外其他的字符一共有%d'%(mycount(list1)),'个'

=============列表与文件===============

#coding:utf-8

#文件读取

fr=open(r'aaa.txt','r')

list1=fr.readlines()

for ii in list1:

ii.strip('\n')

print ii

#coding:utf-8

#文件写入  list写入文件,只能写入str类型

fr=open(r'aaa.txt','r')

list1=fr.readlines()

ami001=open(r'ami001.txt','w')

for ii in list1:

ii.strip('\n')

print ii

ami001.write(ii)

ami001.close()

fr.close()

>>> isinstance(1,int)  #isinstance(n,m)判断nm类型的吗?是返回True,否返回False

True

>>> isinstance(1.05,int)

False

>>> isinstance(1.05,float)

True

>>> isinstance('1.05',int)

False

>>> isinstance('1.05',str)

True

>>>

#coding:utf-8

#混合数据类型的list写入文件

li1=range(0,11)

li2='www.baidu.com'

li3=li1+list(li2)

li3.append(54.55)

li3.append(565)

print li3

i=0

print 'write li3 into ami002.txt'

ami002=open('ami002.txt','w')

while i<len(li3):

if isinstance(li3[i],str)==False:

li3[i]=str(li3[i])

ami002.write(li3[i]+'\n')

i=i+1

ami002.close()

Python列表基础的更多相关文章

  1. python列表基础操作

    Python列表基本操作 记住一句话,叫做顾首不顾尾 首先我们来定义一个列表 name = ["jixuege","dajiba","boduoye& ...

  2. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

  3. python 列表推导式 - python基础入门(16)

    截止到目前为止,python基础内容已经学习了50%左右,在学习编程过程中,我们不仅要学习python语法,同时也需要学习如何把自己代码写的更美观,效率更高. 一.什么是推导式 推导式是从一个或者多个 ...

  4. python 列表List - python基础入门(13)

    列表是python开发过程中最常用的数据类型之一,列表俗称:list ,特点如下: 1.列表由一个或者多个数据构成,数据的类型可以不相同也可以相同: 2.列表中的数据需要写在[]中括号内部,数据与数据 ...

  5. Python数据基础类型-列表

    1,列表的创建 list1 = ['hello', 'world', 1997, 2000] list2 = [1, 2, 3, 4, 5 ] list3 = ["a", &quo ...

  6. 关于python列表的一些基础知识。

    因学校实验室要求,自学了python,一开始看书觉得太简单了,也没有多动手去尝试,直到看完了前八章突然想动手试试的时候,人傻了,深刻体会到了好记性不如烂笔头的道理,故整理一些python列表的操作. ...

  7. python 列表排序

    转自http://www.iplaypython.com/jinjie/jj114.html reverse()方法 将列表中元素反转排序,比如下面这样>>> x = [1,5,2, ...

  8. python 列表生成器

    python 列表生成器 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 一个循环 在C语言等其他语言中,for循环一般是这样的 ...

  9. Python文件基础

    ===========Python文件基础========= 写,先写在了IO buffer了,所以要及时保存 关闭.关闭会自动保存. file.close() 读取全部文件内容用read,读取一行用 ...

随机推荐

  1. 详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析]

    目录 前言 现象 源码分析 HandlerMethodArgumentResolver与HandlerMethodReturnValueHandler接口介绍 HandlerMethodArgumen ...

  2. 你会swap吗,按值传递还是按引用?

    问题 1.Java到底是按值传递(Call by Value),还是按引用传递(Call by Reference)? 2.如下面的代码,为什么不能进行交换? public CallBy swap2( ...

  3. lei

    upstream pap_backend_conf { keepalive 128; server 127.0.0.1:9221 max_fails=2 fail_timeout=5 weight=1 ...

  4. c#取得控制台应用程序根目录

    1.取得控制台应用程序的根目录方法 方法1.Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径方法2.AppDomain.CurrentDomain.Bas ...

  5. 理解C#事件

    前面文章中介绍了委托相关的概念,委托实例保存这一个或一组操作,程序中将在某个特定的时刻通过委托实例使用这些操作. 如果做过GUI程序开发,可能对上面的描述会比较熟悉.在GUI程序中,单击一个butto ...

  6. JavaScript基础---AJAX

    内容提纲: 1.XMLHttpRequest 2.GET与POST 3.封装Ajax  发文不易,转载请注明链接出处,谢谢! 2005年Jesse James Garrett发表了一篇文章,标题为:“ ...

  7. NABCD模型需求分析

    仓库管理系统的NABCD模型 N-Need仓库管理是与我们日常生活息息相关的问题,随着改革开放的不断深入,经济飞速的发展,企业要想生存.发展,要想在激烈的市场竞争中立于不败之地,没有现代化的管理是万万 ...

  8. 利用less监视模式实时预览样式刷新浏览器

    [前言]此处介绍的方法只是我个人的用法,相信大家有更好更简洁的方式. 上次写到利用LiveReload解放F5.而且LiveReload可以编辑sass/less/stylus.但是可惜发现LiveR ...

  9. 【POJ 2485】Highways(Prim最小生成树)

    题目 Prim算法:任选一个点,加入集合,找出和它最近的点,加入集合,然后用加入集合的点去更新其它点的最近距离......这题求最小生成树最大的边,于是每次更新一下最大边. #include < ...

  10. NOIP2008普及组题解

    NOIP2008普及组题解 从我在其他站的博客直接搬过来的 posted @ 2016-04-16 01:11 然后我又搬回博客园了233333 posted @ 2016-06-05 19:19 T ...