|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
x
/ I: C8 g4 X7 X3 \- """
; ~( G' x7 Q5 I5 B - 镇中高一寒假作业Python学习参考答案(技术选修课程试卷第1题)- 升级版. S, o3 V# Y( x* ^6 t+ } t6 Z
/ e9 o$ a2 S0 B+ t7 L1 a' d1 @+ g- ------------------------------------------------------------2 N0 n7 w9 r$ J3 y7 s: n
- RGB颜色模式是用8位二进制表示红色,8位二进制表示绿色,8位二进制表示蓝色。
" ~5 w9 L- R. z+ V4 ? - 若将所有每位二进制取反,将会变成另一种颜色,我们称这种方式为颜色反相。
( l9 R! L8 U, K+ s+ T9 s. o+ d - ------------------------------------------------------------: U3 Q5 D- Q' j/ A C( b
- 提问:编写Python程序,输入原始颜色,则输出对应的颜色反相。例如 #5B23F08 t2 W) r' d7 q
- 答案:???6 f8 z! @4 ]6 i( [6 I& h
- ------------------------------------------------------------* `$ h3 O; m/ X& J- @0 G
- """
# ]' U8 `. |1 z) a, C* i9 E' L$ D - * E w. I/ V. L9 I c( A2 S: u
- x = "0123456789ABCDEF"' r2 W- Q! u- `+ Z: F, F4 D8 s( b) X
- Q6 M F2 W! O; u
- ss = input("请输入颜色代码#??????:",)& E5 j( T l' z4 @& ?! x
- ( M. M: g& g4 T# `
- ans = "#"+ |* K. m3 L# B7 P
- 5 q) `7 h5 h2 m+ W; P4 @
- for s in ss:
S; L' P' a) O) }' A. `7 O- m - 6 x8 }8 I! {; Z
- if s == '#':. f/ U8 H7 h3 Z; G8 s4 E* P
- ; R, [9 Q: c/ y: A+ V1 d
- continue
" |. t3 c9 e) u# Z -
4 m y# k: G. o% i( ]' K - elif s.isdigit() == True:) A/ ^; L ` E& |% M( e6 o
- ' b% v+ q0 ]# T6 J: v9 H4 R* y
- t = int(ord(s)) - 48 #因为字符0对应的ASCII码为48,而应用中代表0,差异48
% X4 R, H" p7 |% X- A% n - 5 Y. q8 ~8 G% ]
- #print("t1=",t) 此处用户代码调试# m; k( C9 b- K0 Q, t% Y) }
- 5 x! j3 c, r0 p: r. d
- # 此处用upper()函数把小写强制转换大写,避免用户输入小写字母造成计算错误,因为小写a对应的ASCII码97) t# j4 R. v& R: Q
- # 想想如果这里用lower()函数把大写强制转换小写,那么代码又要怎么写呢,这里还是减55吗?
: u- @) ^4 I, D/ }, G* @; X -
: `( h; E, ]! e7 t - else:3 V7 _. ~; h+ h2 }' A& U; y
- . y6 S+ w- }+ s: k3 z+ @, M
- t = int(ord(s.upper())) - 55 #因为大写A对应的ASCII码为65,而应用中A代表10,差异55% h& N1 f1 z' m; T& h: H& i
- ) A: o! O. ]" ~# G. F0 c
- #print("t2=",t) 此处用户代码调试
! Q+ G& w( ]1 k2 k - 9 `0 S. l3 O& |. m, ?1 D7 S$ z( \
- ans += x[16-t-1] # 等同 ans = ans + x[16-t-1] ; J: ~- L; \5 e2 g7 J; ^0 x
-
b7 O9 U5 G5 ]: N4 e7 ` Y+ i - print("ans=",ans): J% h* P9 p R8 A, o9 a; g8 a
, `0 \7 O2 t/ N$ x+ T
0 b! i! I& ?1 {) a- #以下代码主要屏蔽非状态下的程序意外退出,跟本题计算无关! R. J' C* J1 V3 ]5 f
- print("\n--- 按回车键退出 ---")
8 {$ v2 \/ A0 g. n) V - input("")
复制代码 |
|