#10 第12周作业(心院班)

Open
opened 2 years ago by test2022 · 21 comments
test2022 commented 2 years ago

第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

第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()函数,如何才能把词典中的键值对返回成一个正常的列表呢?

Traceback (most recent call last): File "D:/学业/华东师范大学/计算机课程/作业/homework12/sy4-14.py", line 12, in <module> e=d.sort(key=lambda x:x[2],reverse=True) AttributeError: 'dict_items' object has no attribute 'sort 想问一下,dict.items()返回的好像不是普通的列表,所返回的对象"dict_items"好像没办法用sort()函数,如何才能把词典中的键值对返回成一个正常的列表呢?

请问这道例题图片图片这一步是什么意思呢,

请问这道例题![图片](/attachments/999a5981-6066-4194-8b06-5387efdba336) 中![图片](/attachments/d9ab6de6-e152-4c8b-bd12-2f7e4fcf1e1c)这一步是什么意思呢,

请问这道例题图片图片这一步是什么意思呢,

这个ninenine在第一行他建立了一个空的字典,你这张图片的意思是:将ninenine中的一个元素,设置成键为“ij”这个字符,值为ij算出来的值,比如建立了一个这样的{‘5*6’:30}

> 请问这道例题![图片](/attachments/999a5981-6066-4194-8b06-5387efdba336) > 中![图片](/attachments/d9ab6de6-e152-4c8b-bd12-2f7e4fcf1e1c)这一步是什么意思呢, > > 这个ninenine在第一行他建立了一个空的字典,你这张图片的意思是:将ninenine中的一个元素,设置成键为“i*j”这个字符,值为i*j算出来的值,比如建立了一个这样的{‘5*6’:30}

image 请问如何将列表内xx号店,xxx再设置成列表呢

![image](/attachments/b5aaa2f8-9888-4db4-9498-e4ba67f2e86a) 请问如何将列表内xx号店,xxx再设置成列表呢
9.2 KiB

image 请问如何将列表内xx号店,xxx再设置成列表呢

可以按空号分隔之后,将店名和利润分别放两个列表,再用zip函数

> ![image](/attachments/b5aaa2f8-9888-4db4-9498-e4ba67f2e86a) > 请问如何将列表内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)

这个代码为什么打出来总是空的

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)
想问一下这里为什么一直输出空列表?

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) **想问一下这里为什么一直输出空列表?**

image 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T

![image](/attachments/130da219-4122-445b-a81e-81489ace0962) 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T

image 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T

可能是输入法的问题吧~用英文输入法重新打一下?

> ![image](/attachments/130da219-4122-445b-a81e-81489ace0962) > 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T 可能是输入法的问题吧~用英文输入法重新打一下?
test2022 commented 2 years ago
Owner

image 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T

split后面多了一个点

> ![image](/attachments/130da219-4122-445b-a81e-81489ace0962) > 太憋屈了QAQ,请问我这里出了什么问题吗?明明在机房能运行的T^T split后面多了一个点

万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?

万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?

万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?

可以看一下书上的提示呢~

> 万能的码友们,字典建好了,怎么对票数排序啊?好崩溃? 可以看一下书上的提示呢~
test2022 commented 2 years ago
Owner

万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?

可以使用L=list(dic.items())先转换成列表,再用sort函数

> 万能的码友们,字典建好了,怎么对票数排序啊?好崩溃? 可以使用L=list(dic.items())先转换成列表,再用sort函数

万能的码友们,字典建好了,怎么对票数排序啊?好崩溃?

可以使用L=list(dic.items())先转换成列表,再用sort函数

感恩您!!!!

> > 万能的码友们,字典建好了,怎么对票数排序啊?好崩溃? > > 可以使用L=list(dic.items())先转换成列表,再用sort函数 感恩您!!!!

第二题应该怎么判断是不是快乐数字啊,可以提供一个思路吗,孩子笨笨,不会打,好崩溃
image

第二题应该怎么判断是不是快乐数字啊,可以提供一个思路吗,孩子笨笨,不会打,好崩溃 ![image](/attachments/3e5b3383-85c0-4ba7-a26e-ab54a05565f8)

第二题应该怎么判断是不是快乐数字啊,可以提供一个思路吗,孩子笨笨,不会打,好崩溃
image

可以试一试先分隔成列表再遍历列表将计算后数得出,以此循环小于200次,或者得到1退出

> 第二题应该怎么判断是不是快乐数字啊,可以提供一个思路吗,孩子笨笨,不会打,好崩溃 > ![image](/attachments/3e5b3383-85c0-4ba7-a26e-ab54a05565f8) 可以试一试先分隔成列表再遍历列表将计算后数得出,以此循环小于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才是单词的字母数啊?好奇怪...

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才是单词的字母数啊?好奇怪...
test2022 commented 2 years ago
Owner

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,' ')

> 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,' ')

图片怎么实现判断快乐数啊孩子要疯了

![图片](/attachments/6890bca4-76cf-4c02-b2ef-b22cbdf13e6f)怎么实现判断快乐数啊孩子要疯了
test2022 commented 2 years ago
Owner

sy4-11.py、sy4-12.py、sy4-13.py、sy4-14.py参考答案

sy4-11.py、sy4-12.py、sy4-13.py、sy4-14.py参考答案

图片怎么实现判断快乐数啊孩子要疯了 加else: 的i=[s]

> ![图片](/attachments/6890bca4-76cf-4c02-b2ef-b22cbdf13e6f)怎么实现判断快乐数啊孩子要疯了 > 加else: 的i=[s]
Sign in to join this conversation.
No Label
No Milestone
No Assignees
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.