文章目录
字符串常用操作
strip, split, splitlines,
join, format,
in, find, index, count, replace
sorted(lis), lis.sort()
upper, lower,
isalpha, isdigit, isalnum,
1. 字符串输入输出 - 去空格,分割,拼接
# 去除首尾空格
string = " I like Beijing. "
string = string.strip()
# string = "I like Beijing."
# 字符串.split()得到的是列表,列表的元素是以符号分隔开的单个字符串,符号默认为空格' ',还可以是':' ',' 之类
arr = string.split()
# arr = ["I", "like", "Beijing."]
arr = arr[::-1]
# arr = ["Beijing.", "like", "I"]
# str.join(seq)方法用于将序列seq中的元素以指定字符str连接成一个新的字符串
s = ' '.join(arr)
# s = "Beijing. like I"
print "I like ", arr[0]
# I like Beijing.
2-1 快手一面 - 对文件中的k-v按k去重按v排序
f = "k1:v1; k2:v2; k3:v3; k4:v4; ... "
arr = f.split(';')
# 字符串.split()得到的是列表,列表的元素是以符号分隔开的单个字符串
# arr: ["k1:v1", "k2:v2", ...]
dic = dict()
for item in arr: # item:"k1:v1"
item = list(map(int, item.split(':'))) # map 映射后得到的是map对象(迭代器),需要转化为list
# item: "1:2" ——> [1,2]
dic[item[0]] = item[1]
# dic:{1:2, ...}
items = list(dic.items())
items.sorted(lambda x:x[1])
print [ x[0] for x in items ]
2-2 广联达一面 - 查找关键词频率并排序
string = 'I need a key word which is the key of your article and the key word must be short'
target = ['key', 'word']
dic = dict()
arr = string.strip().split()
for sub in arr:
if sub in target:
dic[sub] = dic.get(sub, 0) + 1
# 直接对字典执行排序,soeted返回的是列表
lis = sorted(dic