Python字典和字符串的学习

  学习Python的字典还是和oc的字典进行对比学习,首先我们来创建一个字典。根据oc中字典一样,字典是无序的,根据键来进行取值。

oc:

oc中的字典分为可变字典和不可变字典,在对字典进行增,删的时候要使用可变字典,在对字典进行改和查的时候都可使用。

NSDictionary *dic =@{@"key":@"values",@"key1":@"values1"};

NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"values",@"key",@"values1",@"key1", nil];

Python:

info = {

       @"key":@"values",

       @"key1":@"values1",

       @"key2":@"values2",

}

增:

oc:

 [dict setObject:@"values2" forKey:@"key2"];

Python:

info["key3"] = "values"

 

删:

oc

[dict removeObjectForKey:@"key2"];

Python:

del info["key2"]

info pop("key2")

info popitem() #随机删除

改:

oc:

dict[@"key"] = @"VALUES";

Python:

info["key"] = "VALUES"

info.default("key5","values5") #判断之前否又这个有就修改,没有就添加

oc:

NSString *string = dict[@"key1"];

Python:

info["key"] #必须确定这个字典中又这个key如果没有就会报错

info.get("key")#这个key有就返回没有就返回none

 

b = {

'key':"values",

1:3,

2:4,

}

info.update(b) #把字典合并,如果存在相同的就更换旧值。

 

info.items() #字典转化成为列表

c = dict.formkeys([6,7,8],"test") #初始化一个新字典

字典的循环

for i in info:

   print(i,info[i])

 

python中字符串的一些方法

name = "zhang"

print(name.capitalize())  #首字母大写

name.count("a")  #字符串中有多少个a

name.center(50,"-")  #字符串放在中间 不够50个字符用-补充

name.endswith("g")  #判断字符串是不是g结尾

name.encode()  #字符串编码

name.expandtabs(tabsize=0)  #将字符串中的\t变成多少空格

name.find("") #找到字符串中这个字母所在的索引

name.format_map() #这里面可以传字典

name.isalnum() #是否是英文字符和数字组成

name.isalpha()  #是否是字母组成

name.isdecimal () #是否是十进制

name.isdigit #是否是整数

name.isidentifier #判断是不是一个合法的表示符

name.islower() #判断是不是小写

name.isnumeric() #判断是不是只有数字

name.isspace() #是不是空格

name.istitle() #每个字母首字母是不是大写

name.isupper() #是不是都是大写

print ('+'.join(['1','2','3']))  == 1+2+3

name.ljust(50,"*") #跟center一样就是不从左边数不够用*补

name.lower  #大写变小写

name.upper #小写边大写

name.strip #去除空格换行  lstrip  rstrip 左右的去处

 

p = str.maketrans("abcdef","123456")

name.tanslate(p)  #把字符串转成后面的值  输出z1hng 加密可用到

 

name.replace("z","Z",1)替换

name.rfind("") #从左往右找到的最右边值的下标

name.split('') #分割字符串

name.splitines(0) #根据换行符分割

name.swapcase() #首字母小写

name.title() #首字母大写

name.zfill(50) #不够用0补

posted on 2017-10-24 11:31  无聊怎么聊  阅读(295)  评论(0编辑  收藏  举报