Traceback (most recent call last):
File "D:/学业/华东师范大学/计算机课程/作业/homework12/sy4-14.py", line 12, in
e=d.sort(key=lambda x:x[2],reverse=True)
AttributeError: 'dict_items' object has no attribute 'sort
s=input("请输入区间a,b:")
l1=s.split(",")
a=int(l1[0])
b=int(l1[1])
k=[]
c=[]
for i in range(a,b+1):
n=str(i)
s=0
count=0
while count<200:
for x in n:
s=s+int(x)**2#计算下一层
count=count+1#统计
if s==1:
c.append(count)
k.append(i)
break
else:
n=str(s)
continue
print(k,c)
这个代码为什么打出来总是空的
s=input("请输入区间a,b:")
l1=s.split(",")
a=int(l1[0])
b=int(l1[1])
k=[]
c=[]
for i in range(a,b+1):
n=str(i)
s=0
count=0
while count<200:
for x in n:
s=s+int(x)**2#计算下一层
count=count+1#统计
if s==1:
c.append(count)
k.append(i)
break
else:
n=str(s)
continue
print(k,c)
这个代码为什么打出来总是空的
for i in range(a,b+1):
count=0
while count<200:
n=i
s2=0
L2=list(str(n))
for x in L2:
s2+=int(x)**2
count+=1
if s2==1:
y={1:count}
d=d.update(y)
break
else:
n=s2
print(d) 想问一下这里为什么一直输出空列表?
I=input('输入区间a,b:')
J=I.split(sep=',')
a=int(J[0])
b=int(J[1])
d={}
for i in range(a,b+1):
count=0
while count<200:
n=i
s2=0
L2=list(str(n))
for x in L2:
s2+=int(x)**2
count+=1
if s2==1:
y={1:count}
d=d.update(y)
break
else:
n=s2
print(d)
**想问一下这里为什么一直输出空列表?**
s = input()
s = s.split(" ")
for i in range(len(s)):
s[i] = list(s[i])
for j in range(len(s[i])):
if s[i][j].isalpha() == 0:
del s[i][j]
s[i] = str(s[i])
countDi = dict()
for i in range(len(s)):
s[i] = str(s[i])
count = int(len(s[i])/5)
if count not in countDi.keys():
countDi[count] = 1
else:
countDi[count] += 1
li1 = list(countDi.keys())
li2 = list(countDi.values())
li = []
print("[", end="")
for i in range(len(li1)-1):
print("({},{})".format(li1[i], li2[i]), end=",")
print("({},{})".format(li1[len(li1)-1], li2[len(li1)-1]), end="")
print("]", end="")
s = input()
s = s.split(" ")
for i in range(len(s)):
s[i] = list(s[i])
for j in range(len(s[i])):
if s[i][j].isalpha() == 0:
del s[i][j]
s[i] = str(s[i])
countDi = dict()
for i in range(len(s)):
s[i] = str(s[i])
count = int(len(s[i])/5)
if count not in countDi.keys():
countDi[count] = 1
else:
countDi[count] += 1
li1 = list(countDi.keys())
li2 = list(countDi.values())
li = []
print("[", end="")
for i in range(len(li1)-1):
print("({},{})".format(li1[i], li2[i]), end=",")
print("({},{})".format(li1[len(li1)-1], li2[len(li1)-1]), end="")
print("]", end="")
请问一下sy4-13,为什么我的第二个for循环里为什么len(s[i])得除以5才是单词的字母数啊?好奇怪...
s = input()
s = s.split(" ")
for i in range(len(s)):
s[i] = list(s[i])
for j in range(len(s[i])):
if s[i][j].isalpha() == 0:
del s[i][j]
s[i] = str(s[i])
countDi = dict()
for i in range(len(s)):
s[i] = str(s[i])
count = int(len(s[i])/5)
if count not in countDi.keys():
countDi[count] = 1
else:
countDi[count] += 1
li1 = list(countDi.keys())
li2 = list(countDi.values())
li = []
print("[", end="")
for i in range(len(li1)-1):
print("({},{})".format(li1[i], li2[i]), end=",")
print("({},{})".format(li1[len(li1)-1], li2[len(li1)-1]), end="")
print("]", end="")
第12周作业(心院班)
1、4.1.2-4.1.3,不用保存和提交。
2、4.4.3-4.4.6,按题目要求保存并提交。
(作业名为sy4-11.py、sy4-12.py、sy4-13.py、sy4-14.py)
以上作业不迟于周五晚提交至水杉码园学号仓库的homework12分支下。
水杉码园上的本次作业要求:https://gitea.shuishan.net.cn/Comp-Prog-A.Liuyao.2022Fall.XinYuan/AllStuRead/issues/10
实验素材请参考AllStuRead仓库的范例、素材(学生).zip
Traceback (most recent call last):
File "D:/学业/华东师范大学/计算机课程/作业/homework12/sy4-14.py", line 12, in
e=d.sort(key=lambda x:x[2],reverse=True)
AttributeError: 'dict_items' object has no attribute 'sort
想问一下,dict.items()返回的好像不是普通的列表,所返回的对象"dict_items"好像没办法用sort()函数,如何才能把词典中的键值对返回成一个正常的列表呢?
请问这道例题 中这一步是什么意思呢,
这个ninenine在第一行他建立了一个空的字典,你这张图片的意思是:将ninenine中的一个元素,设置成键为“ij”这个字符,值为ij算出来的值,比如建立了一个这样的{‘5*6’:30}
请问如何将列表内xx号店,xxx再设置成列表呢
可以按空号分隔之后,将店名和利润分别放两个列表,再用zip函数
s=input("请输入区间a,b:")
l1=s.split(",")
a=int(l1[0])
b=int(l1[1])
k=[]
c=[]
for i in range(a,b+1):
n=str(i)
s=0
count=0
while count<200:
for x in n:
s=s+int(x)**2#计算下一层
count=count+1#统计
if s==1:
c.append(count)
k.append(i)
break
else:
n=str(s)
continue
print(k,c)
这个代码为什么打出来总是空的
I=input('输入区间a,b:')
J=I.split(sep=',')
a=int(J[0])
b=int(J[1])
d={}
for i in range(a,b+1):
count=0
while count<200:
n=i
s2=0
L2=list(str(n))
for x in L2:
s2+=int(x)**2
count+=1
if s2==1:
y={1:count}
d=d.update(y)
break
else:
n=s2
print(d)
想问一下这里为什么一直输出空列表?
太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T
可能是输入法的问题吧~用英文输入法重新打一下?
split后面多了一个点
万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?
可以看一下书上的提示呢~
可以使用L=list(dic.items())先转换成列表,再用sort函数
感恩您!!!!
第二题应该怎么判断是不是快乐数字啊,可以提供一个思路吗,孩子笨笨,不会打,好崩溃
可以试一试先分隔成列表再遍历列表将计算后数得出,以此循环小于200次,或者得到1退出
s = input()
s = s.split(" ")
for i in range(len(s)):
s[i] = list(s[i])
for j in range(len(s[i])):
if s[i][j].isalpha() == 0:
del s[i][j]
s[i] = str(s[i])
countDi = dict()
for i in range(len(s)):
s[i] = str(s[i])
count = int(len(s[i])/5)
if count not in countDi.keys():
countDi[count] = 1
else:
countDi[count] += 1
li1 = list(countDi.keys())
li2 = list(countDi.values())
li = []
print("[", end="")
for i in range(len(li1)-1):
print("({},{})".format(li1[i], li2[i]), end=",")
print("({},{})".format(li1[len(li1)-1], li2[len(li1)-1]), end="")
print("]", end="")
请问一下sy4-13,为什么我的第二个for循环里为什么len(s[i])得除以5才是单词的字母数啊?好奇怪...
sy4-13建议使用string.punctuation和replace将标点符号替换为空格
import string
s=input()
for x in string.punctuation:
s = s.replace(x,' ')
怎么实现判断快乐数啊孩子要疯了
sy4-11.py、sy4-12.py、sy4-13.py、sy4-14.py参考答案