题解 | #密码游戏#
密码游戏
https://www.nowcoder.com/practice/36641ab168664384aff798ba7ce34bc1
n = int(input()) qw = n//1000 bw = (n-qw*1000)//100 sw = (n-qw*1000-bw*100)//10 gw = n-qw*1000-bw*100-sw*10 qw = (qw+3)%9 bw= (bw+3)%9 sw= (sw+3)%9 gw= (gw+3)%9 n_list = [qw,bw,sw,gw] n_list[0], n_list[2] = n_list[2], n_list[0] n_list[1], n_list[3] = n_list[3], n_list[1] print(n_list[0], n_list[1], n_list[2], n_list[3],sep='')
1、获取四位数每个位上的数字的简单办法
qw = n//1000 求商,/ 表示普通除法,不能整除时结果为小数
bw = (n//100)%10
sw = (n//10)%10
gw = n %10
2、用for 循环修改四位数每一位的值
看见这样的说法就要想到用list+for循环,而不是单纯的垒代码
将第一步取出来的四个数放在list中
list = [qw, bw, sw, gw]
for i in range(len(list)):
list[i]=( list[i]+3)%9
3、快速交换list中不同位置的值
list[0],list[2] = list[2],list[0]
查看19道真题和解析