题解 | #密码游戏#

密码游戏

https://www.nowcoder.com/practice/36641ab168664384aff798ba7ce34bc1

num = input()

ss = []
for i in num:
    ii = (int(i)+3)%9
    ss.append(str(ii))
#写成一行:ss = list(((int(i)+3)%9) for i in num)

#交换
ss[0],ss[2]=ss[2],ss[0]
ss[1],ss[3]=ss[3],ss[1]

#result = ''.join(ss)  #用空字符串 '' 作为连接符,将每个字符串连接成一个长字符串。
#print(result)
for y in ss:  #输出数字,需要遍历列表,注意不换行。
    print(y,end='')

ss = list(((int(i)+3)%9) for i in num)解释:

  • for i in num: 这是列表解析的迭代部分,它遍历了列表 num 中的每个元素,并将当前元素赋值给变量 i
  • int(i): 这将列表 num 中的每个元素 i 转换为整数类型。
  • (int(i) + 3) % 9: 这是对每个元素执行的操作。它首先将元素转换为整数,然后加上 3,接着取结果除以 9 的余数。
  • list(...): 这将列表解析的结果转换为一个新的列表 ss

result = ''.join(map(str, num_list)) 解释:

  • map(str, num_list):使用 map() 函数将列表 num_list 中的每个整数元素转换为字符串形式。 map() 函数接受一个函数和一个可迭代对象作为参数,然后将该函数应用于可迭代对象的每个元素。在这里,str 函数被用于将整数转换为字符串。
  • ''.join(...):使用 join() 函数将 map() 函数的结果连接起来。 join() 函数接受一个可迭代对象作为参数,并使用指定的字符串将可迭代对象中的所有元素连接起来。在这里,我们使用空字符串 '' 作为连接符,将每个字符串连接成一个长字符串。

这行代码的目的是将列表中的多个整数元素连接成一个字符串。

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
代码飞升:别用口语,后端就写后端,前端就写前端,最后别光后悔
点赞 评论 收藏
分享
牛客84809583...:举报了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务