转--Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

来源:互联网 发布:html2canvas.js api 编辑:程序博客网 时间:2024/06/06 01:25

分类: Python/Ruby

  1. 创建列表
  2. sample_list = ['a',1,('a','b')]
  3. Python 列表操作
  4. sample_list = ['a','b',0,1,3]
  5. 得到列表中的某一个值
  6. value_start = sample_list[0]
  7. end_value = sample_list[-1]
  8. 删除列表的第一个值
  9. del sample_list[0]
  10. 在列表中插入一个值
  11. sample_list[0:0] = ['sample value']
  12. 得到列表的长度
  13. list_length = len(sample_list)
  14. 列表遍历
  15. for element in sample_list:
  16. print 'element'
  17. Python 列表高级操作/技巧
  18. 产生一个数值递增列表
  19. num_inc_list = range(30)
  20. #will return a list [0,1,2,...,29]
  21. 用某个固定值初始化列表
  22. initial_value = 0
  23. list_length = 5
  24. sample_list = [ initial_value for i in range(10)]
  25. sample_list = [initial_value]*list_length
  26. # sample_list ==[0,0,0,0,0]
  27. 附:python内置类型
  28. 1、list:列表(即动态数组,C++标准库的vector,但可含不同类型的元素于一个list中)
  29. a = ["I","you","he","she"] #元素可为任何类型。
  30. 下标:按下标读写,就当作数组处理
  31. 0开始,有负下标的使用
  32. 0第一个元素,-1最后一个元素,
  33. -len第一个元素,len-1最后一个元素
  34. 取list的元素数量
  35. len(list) #list的长度。实际该方法是调用了此对象的__len__(self)方法。
  36. 创建连续的list
  37. L = range(1,5#即 L=[1,2,3,4],不含最后一个元素
  38. L = range(1102#即 L=[1, 3, 5, 7, 9]
  39. list的方法
  40. L.append(var) #追加元素
  41. L.insert(index,var)
  42. L.pop(var) #返回最后一个元素,并从list中删除之
  43. L.remove(var) #删除第一次出现的该元素
  44. L.count(var) #该元素在列表中出现的个数
  45. L.index(var) #该元素的位置,无则抛异常
  46. L.extend(list) #追加list,即合并list到L上
  47. L.sort() #排序
  48. L.reverse() #倒序
  49. list 操作符:,+,*,关键字del
  50. a[1:] #片段操作符,用于子list的提取
  51. [1,2]+[3,4#为[1,2,3,4]。同extend()
  52. [2]*4 #为[2,2,2,2]
  53. del L[1#删除指定下标的元素
  54. del L[1:3#删除指定下标范围的元素
  55. list的复制
  56. L1 = L #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的
  57. L1 = L[:] #L1为L的克隆,即另一个拷贝。
  58. list comprehension
  59. [ <expr1> for k in L if <expr2> ]
  60. 2、dictionary: 字典(即C++标准库的map)
  61. dict = {'ob1':'computer''ob2':'mouse''ob3':'printer'}
  62. 每一个元素是pair,包含key、value两部分。key是Integer或string类型,value 是任意类型。
  63. 键是唯一的,字典只认最后一个赋的键值。
  64. dictionary的方法
  65. D.get(key, 0#同dict[key],多了个没有则返回缺省值,0。[]没有则抛异常
  66. D.has_key(key) #有该键返回TRUE,否则FALSE
  67. D.keys() #返回字典键的列表
  68. D.values() #以列表的形式返回字典中的值,返回值的列表中可包含重复元素
  69. D.items() #将所有的字典项以列表方式返回,这些列表中的每一项都来自于(键,值),但是项在返回时并没有特殊的顺序
  70. D.update(dict2) #增加合并字典
  71. D.popitem() #得到一个pair,并从字典中删除它。已空则抛异常
  72. D.clear() #清空字典,同del dict
  73. D.copy() #拷贝字典
  74. D.cmp(dict1,dict2) #比较字典,(优先级为元素个数、键大小、键值大小)
  75. #第一个大返回1,小返回-1,一样返回0
  76. dictionary的复制
  77. dict1 = dict #别名
  78. dict2=dict.copy() #克隆,即另一个拷贝。
  79. 3、tuple:元组(即常量数组)
  80. tuple = ('a''b''c''d''e')
  81. 可以用list的 [],:操作符提取元素。就是不能直接修改元素。
  82. 4、string: 字符串(即不能修改的字符list)
  83. str = "Hello My friend"
  84. 字符串是一个整体。如果你想直接修改字符串的某一部分,是不可能的。但我们能够读出字符串的某一部分。
  85. 子字符串的提取
  86. str[:6]
  87. 字符串包含判断操作符:innot in
  88. "He" in str
  89. "she" not in str
  90. string模块,还提供了很多方法,如
  91. S.find(substring, [start [,end]]) #可指范围查找子串,返回索引值,否则返回-1
  92. S.rfind(substring,[start [,end]]) #反向查找
  93. S.index(substring,[start [,end]]) #同find,只是找不到产生ValueError异常
  94. S.rindex(substring,[start [,end]])#同上反向查找
  95. S.count(substring,[start [,end]]) #返回找到子串的个数
  96. S.lowercase()
  97. S.capitalize() #首字母大写
  98. S.lower() #转小写
  99. S.upper() #转大写
  100. S.swapcase() #大小写互换
  101. S.split(str, ' '#将string转list,以空格切分
  102. S.join(list, ' '#将list转string,以空格连接
  103. 处理字符串的内置函数
  104. len(str) #串长度
  105. cmp("my friend", str) #字符串比较。第一个大,返回1
  106. max('abcxyz'#寻找字符串中最大的字符
  107. min('abcxyz'#寻找字符串中最小的字符
  108. string的转换
  109. float(str) #变成浮点数,float("1e-1") 结果为0.1
  110. int(str) #变成整型, int("12") 结果为12
  111. int(str,base) #变成base进制整型数,int("11",2) 结果为2
  112. long(str) #变成长整型,
  113. long(str,base) #变成base进制长整型,
  114. 字符串的格式化(注意其转义字符,大多如C语言的,略)
  115. str_format % (参数列表) ?#参数列表是以tuple的形式定义的,即不可运行中改变
  116. >>>print ""%s's height is %dcm" % ("My brother"180)
  117. #结果显示为 My brother's height is 180cm
  118. 。。。。。。。。。。。。。。。。。。
  119. list 和 tuple 的相互转化
  120. tuple(ls)
  121. list(ls)  


转自:http://blog.chinaunix.net/uid-12014716-id-3894754.html
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 玩游戏时出现输入不支持怎么办 电脑玩游戏出现蓝屏怎么办 谷歌商店网页版进不去怎么办 谷歌商店为什么打不开怎么办 玩lol突然卡顿怎么办 手机上路由器管理页面打不开怎么办 苹果电脑开机页面密码打不开怎么办 逆战活动页面打不开怎么办 电脑玩lol网络卡怎么办 ios11.4qq闪退怎么办 ios11.3qq闪退怎么办 英雄联盟进入游戏界面黑屏怎么办 英雄联盟经常未响应怎么办 英雄联盟总是无响应怎么办 英雄联盟新客户端太卡怎么办 win10英雄联盟fps低怎么办 lol登游戏闪退怎么办 lol读取界面很慢怎么办 玩lol卡死黑屏怎么办 lol黑屏退不出来怎么办 电脑分辨率调高了黑屏怎么办 电脑设置分辨率黑屏了怎么办 分辨率调高了黑屏怎么办 电脑调分辨率黑屏了怎么办 科沃斯cr120遥控器丢了怎么办 买了kl色的钻戒怎么办 qq旋风没有蓝钻怎么办 手机桌面短信图标不见了怎么办 手机桌面qq音乐图标不见了怎么办 电脑显示器图标变大了怎么办 手机卡信号好但是网络不好怎么办 陌陌功能被限制怎么办 陌陌设备封了怎么办 荣耀v8手机开机键不灵怎么办 联通积分换的腾讯会员怎么办 小米6手机变卡了怎么办 微信绑定银行卡次数太多怎么办 银行卡绑定太多微信了怎么办 怎样给qq设密码怎么办 吃了心悦胶囊上火怎么办 qq暂时被冻结了怎么办