初学python,以此题练习,不求财富。
# -*- coding: utf-8 -*-dic = {'a':[1,2,3,4], 'b':[11,22,33]}
def gcd(m, n):
''' 求两个数的最大公约数 (greatest common divisor) '''族笑
余李return m if n == 0 else 兆毁含gcd(n, m % n)
#三元表达式格式:true_part if condition else false_part
def lcm(m, n):
''' 求两个数的最小公倍数 (least common multiple) '''
return (m * n) / gcd(m, n)
lsLen = [len(dic['a']), len(dic['b'])]
lcmRet = lcm(lsLen[0], lsLen[1])
dicMultiple = {'a': lcmRet / lsLen[0], 'b': lcmRet / lsLen[1]}
dicRet = {'a':[], 'b':[]}
for key in dic:
for elem in dic[key]:
for n in range(dicMultiple[key]):
dicRet[key].append(elem)
print dicRet
python中的"+name+"是指字符串拼接的 *** 作,它可以把多个字符串合并成一个字符串,也就是字符串的连接。比如,有两个字符串s1="Hello",s2="World",使用+可以把它们连接起来,得到s1+s2,结果是"HelloWorld"。另外,使用+连接字符串时,只能连接相同类迹历宏型的字符串,比如,只能连接两个字符串或两个Unicode字符串,但是不能连接一个字符串和一个Unicode字符串。
另外,字符串拼接也可以使用格式化字符串,比如使用format()函数,可以把字符串拼接到指定的位置,比如:"{} {}".format(s1,s2),结果是"Hello World"。
总之,python中的"+name+" *** 作是指字符串拼接的 *** 作,可以把多个字符串连接姿册起来,也可以使用格式烂弊化字符串拼接字符串。
不知道你埋慧是不是这个意思,
字典调用values()方法会返回Value值所构成的列表,通过两个循环就能弯悄答遍历字典里的列表
data = 运羡{'a':[1,2,3],'b':[4,5,6]}for l in data.values():
for item in l:
print item
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)