参考慕课网

内置函数

 map(f,list) f接收一个参数 

def format_name(s):
return s[0].upper() + s[1:].lower()

reduce(f,list)f函数接收2个参数  如果接收3个参数第三个做初始值

def prod(x, y):
return x * y

filter(f,list)   f判断函数 返回符合判断的list元素    

def is_odd(x):
return x % 2 == 1
 
sorted() 传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。
def format_name(s):
return s[0].upper() + s[1:].lower() 首字母大写 后面的小写

L= [1,2,3]
print sum(L) 求和函数

return math.sqrt(x) == int(math.sqrt(x))   开平方和取整

dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的

一是先判断一下 key 是否存在,用 in 操作符:

if 'Paul' in d:
print d['Paul']

如果 'Paul' 不存在,if语句判断为False,自然不会执行 print d['Paul'] ,从而避免了错误。

二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:

>>> print d.get('Bart')
59
>>> print d.get('Paul')
None 列表 L = [1,2,3]
元组 t = (1,2,[1,2,3])
字典 d = {key1:value1, key2:value2} d1 = {"1":"one", "2":"two"}
L= []
L.append ---向列表尾添加项value
L.insert insert(i, value)  ---向列表i位置插入项vlaue,如果没有i,则添加到列表尾部
L.extend 表尾添加一个list
L.pop  按索引删除 L.remove   按值删除 L.index 某个值的索引号是多少
L.count 某个值出现的次数 t = ()
t.count(value)
t.index(value) d = {}
d.clear()
d2 = d.copy()
l = [1, 2, 3]
t = (1, 2, 3)
d3 = {}.fromkeys(l) 创建并返回一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(默认为None) print d3 #{1: None, 2: None, 3: None}
d4 = {}.fromkeys(t, "default")
print d4 #{1: 'default', 2: 'default', 3: 'default'}
d3 = {}.fromkeys(l,t) print d3 #{1: (11, 22, 33), 2: (11, 22, 33), 3: (11, 22, 33)} d.get(key) 结果是value 返回字典dict中键key对应值,如果字典中不存在此键,则返回default 的值(default默认值为None)
d6 = {1:"one", 2:"two", 3:"three"}
print d5.get(1) #one
print d5.get(1,"zzx") #one
print d5.get(5) #None
print d5.get(5, "test") #test

has_key(key)  ---判断字典中是否有键key

d6 = {1:"one", 2:"two", 3:"three"}

print d6.has_key(1)  #True
print d6.has_key(5) #False
 

  items()  ---返回一个包含字典中(键, 值)对元组的列表


d7 = {1:"one", 2:"two", 3:"three"}

for item in d7.items():
print item
#(1, 'one')
#(2, 'two')
#(3, 'three') for key, value in d7.items():
print "%s -- %s" % (key, value)
#1 -- one
#2 -- two
#3 -- three

    keys()  ---返回一个包含字典中所有键的列表


d8 = {1:"one", 2:"two", 3:"three"}

for key in d8.keys():
print key
#1
#2
#3

    values()  ---返回一个包含字典中所有值的列表


d8 = {1:"one", 2:"two", 3:"three"}

for value in d8.values():
print value
#one
#two
#three

    pop(key, [default])  ---若字典中key键存在,删除并返回dict[key],若不存在,且未给出default值,引发KeyError异常


d9 = {1:"one", 2:"two", 3:"three"}
print d9.pop(1) #one
print d9 #{2: 'two', 3: 'three'}
print d9.pop(5, None) #None
try:
d9.pop(5) # raise KeyError
except KeyError, ke:
print "KeyError:", ke #KeyError:5

    popitem()  ---删除任意键值对,并返回该键值对,如果字典为空,则产生异常KeyError


d10 = {1:"one", 2:"two", 3:"three"}

print d10.popitem()  #(1, 'one')
print d10 #{2: 'two', 3: 'three'}

    setdefault(key,[default])  ---若字典中有key,则返回vlaue值,若没有key,则加上该key,值为default,默认None


d = {1:"one", 2:"two", 3:"three"}

print d.setdefault(1)  #one
print d.setdefault(5) #None
print d #{1: 'one', 2: 'two', 3: 'three', 5: None}
print d.setdefault(6, "six") #six
print d #{1: 'one', 2: 'two', 3: 'three', 5: None, 6: 'six'}

    update(dict2)  ---把dict2的元素加入到dict中去,键字重复时会覆盖dict中的键值


d = {1:"one", 2:"two", 3:"three"}
d2 = {1:"first", 4:"forth"} d.update(d2)
print d #{1: 'first', 2: 'two', 3: 'three', 4: 'forth'}

    viewitems()  ---返回一个view对象,(key, value)pair的列表,类似于视图。优点是,如果字典发生变化,view会同步发生变化。在


  迭代过程中,字典不允许改变,否则会报异常


d = {1:"one", 2:"two", 3:"three"}
for key, value in d.viewitems():
print "%s - %s" % (key, value)
#1 - one
#2 - two
#3 - three

    viewkeys()  ---返回一个view对象,key的列表


d = {1:"one", 2:"two", 3:"three"}
for key in d.viewkeys():
print key
#1
#2
#3

    viewvalues()  ---返回一个view对象,value的列表


d = {1:"one", 2:"two", 3:"three"}
for value in d.viewvalues():
print value
#one
#two
#three




 
												

dic的更多相关文章

  1. python征程3.1(列表,迭代,函数,dic,set,的简单应用)

    1.列表的切片. 1.对list进行切片.'''name=["wangshuai","wangchuan","wangjingliang", ...

  2. Python_Day_03 list,dic,tuple方法总结

    编程语言中最长见的几种数据类型,字典,列表,等.同样在Python中也有这些数据类型,只是有些表现形式不同.同时在Python中又多了一种叫做元组(tuple)的东西. list(列表) 初始化列表 ...

  3. iOS不使用JSONKit做Dic到JsonString的转换

    NSDictionary to jsonString [self DataTOjsonString:dic] -(NSString*)DicToJsonString:(id)object { NSSt ...

  4. iOS -- 给model赋值时走了[self setValuesForKeysWithDictionary:dic]不走setvalue: forked:

    这是一个小坑, 看看你的BaseModel的便利构造器的方法: + (__kindof BaseModel *)modelWithDic:(NSDictionary *)dic { return [[ ...

  5. Python中的List,Tuple,Dic,Set

    Python中的List,Tuple,Dic,Set List定义 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推 ...

  6. Ansj分词双数组Trie树实现与arrays.dic词典格式

    http://www.hankcs.com/nlp/ansj-word-pairs-array-tire-tree-achieved-with-arrays-dic-dictionary-format ...

  7. hashTabel List 和 dic

    hashTabel  List  和 dic 原:https://www.cnblogs.com/jilodream/p/4219840.html .Net 中HashTable,HashMap 和 ...

  8. python dic字典使用

    #!/usr/bin/env python -*-''' 字典的基本组成及用法: dict={key:value} dict[key]=value 字典是无序的. key值是唯一属性,一对一,几个ke ...

  9. 批量操作RunTime之获取的Dic换成Model

    方法一: // // AlinkDeviceInfo.m //// // Created by Vivien on 2018/10/12. // Copyright © 2018年 . All rig ...

  10. PaodingAnalysis 提示 "dic home should not be a file, but a directory"

    Exception in thread "main" net.paoding.analysis.exception.PaodingAnalysisException: dic ho ...

随机推荐

  1. solus linux 更新源

    添加源(清华大学开源软件镜像)sudo eopkg ar Solus https://mirrors.tuna.tsinghua.edu.cn/solus/shannon/eopkg-index.xm ...

  2. hashCode() 和 equals()的问题解答及重写示范

    本章的内容主要解决下面几个问题: 1 equals() 的作用是什么? 2 equals() 与 == 的区别是什么? 3 hashCode() 的作用是什么? 4 hashCode() 和 equa ...

  3. linux内核链表的实现

    .\linux-2.6.22.6_vscode\include\linux\list.h #ifndef _LINUX_LIST_H#define _LINUX_LIST_H #ifdef __KER ...

  4. 中文文本分类之CharCNN

    文本分类是自然语言处理中一个非常经典的任务,可用的模型非常多,相关的开源代码也非常多了.这篇博客用一个CNN模型,对新闻文本进行分类. 全部代码有4个模块:1.数据处理模块(命名为:cnews_loa ...

  5. python计算:pi/4=1-1/3+1/5-1/7+…

    当有一项的绝对值小于10e-6停止计算 def cul() : ans = 0;add = 1 sign = 1 while(1/add>10**(-6)) : ans = ans + sign ...

  6. 升级安装go1.13.5

    运行文件时报错 verifying github.com/mattn/go-isatty@v0.0.10-0.20190818123653-bf9a1dea1961/go.mod: github.co ...

  7. 092-PHP定义索引数组

    <?php $arr=array('name'=>'PHP','age'=>22,7=>25,33,21=>35,56); //定义一个索引数组 echo '数组$arr ...

  8. 061-PHP函数定义默认参数

    <?php function add($x=2,$y=3){ //定义函数并设置默认参数 return $x+$y; } echo add(); //不传入参数调用add函数add(2,3) e ...

  9. Java 二叉树深度 判断平衡二叉树

    package cookie; public class BTreeDepthIsBalanced { int depth(BNode head) { if (head == null) { retu ...

  10. 错误:selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities

    错误再现 原因:firefox浏览器版本和浏览器驱动版本不匹配 解决办法:卸载高版本浏览器,安装低版本浏览器