|
1.执行脚本的两种方式 Python a.py 直接调用Python解释器执行文件 chomd +x a.py ./a.py #修改a.py文件的属性,为可执行,在用 ./ 执行a.py 文件 2、简述位、字节的关系 1bytes=8bit ,2**8=256,可以代表256中变化, : ]! l( O7 \1 L6 b1 `- r
3、简述 ascii、unicode、utf-8、gbk 的关系ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符, Unicode是为了统一世界各国语言的不用,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间, 可以用在内存处理中,兼容了utf-8,gbk,ASCII, utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的, gbk 是中文的字符编码,用2个字节代表一个字符, 4 W' P0 \- n, @3 o( e5 B, V
4、请写出 “李杰” 分别用 utf-8 和 gbk 编码所占的位数utf-8 是3 bytes=24bit gbk 是2bytes=16bit X; r& E c, }3 Q! E% q8 h8 U3 P
5、Pyhton 单行注释和多行注释分别用什么?单行注释 # 多行注释 """ """三个双引号或是三个单 引号把要解释的内容放中间, ‘’‘ ’’’ ' h" E+ O, w+ }7 |
6、声明变量注意事项有那些?万能避错规则,以小写字母开头命名,可以加上下划线,或者数字, 不能以Python的关键字命名, 能表明变量的意义 3 D' }1 {: X( T1 V2 t- D. g
8、如何查看变量在内存中的地址?" R' I4 a! t6 R' f9 F8 M5 F
z=1
0 l, N' d) v+ p# }' ~2 g6 P$ Yprint(id(z))+ D/ i9 ~. H8 y3 E
9、执行 Python 程序时,自动生成的 .pyc 文件的作用是什么?.pyc 是编译py文件后的二进制文件,用于加速运行 & T& ` s; |3 N) |6 n1 u
10、写代码2 v& x7 }1 r/ w% h* H- L
a.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!/ x; }+ |! w$ C/ Q
name=input('name:').strip()
5 n# B6 Q4 F' l* }pwd=input('pwd:').strip(). V y$ m0 K0 x0 K9 ^: F7 I
if name=='seven' and pwd=='123' :$ P) N( E$ E. O+ D4 N, Z1 i! m
print('ok')
6 |+ x- L0 W6 q6 d W5 Telse:
: }2 T, v6 n! N, D7 Z4 y- n* [+ j print('error')& b' i, {0 ]& M& [) F1 E- {% Y
) k, U1 z2 I9 n) M% m. Ib.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次while循环:6 y+ Z7 h" x4 o8 Q' G; t
count=1
& [# O& P: j# ~: c& wwhile count<=3 :. t0 e O4 z5 m9 |7 c
name = input('name:').strip()
: T& R2 E3 K! _) W D3 U pwd = input('pwd:').strip()& y5 e% g9 ^( N2 v/ m; c$ I0 a
8 L! ^2 t1 w( o1 I2 k* Y
if name=='seven' and pwd=='123' :
9 L. C/ s" R0 y9 W print('ok')
# L2 ?! v( s3 G! ` else:
2 z. J6 c5 D0 f& |1 q print('error')+ ~1 h+ M6 I7 B. T
count += 1
; g k8 c& s4 E0 Z( d, bfor循环:% W7 ?7 j4 P) H, } ?3 Z
for count in range(3) :
; m" ~& e( f- j8 o3 o" ^0 L name = input('name:').strip()
6 O+ U) q" t7 @% q) k+ j9 t pwd = input('pwd:').strip(); a& J# X' o% x3 `
8 T. q- p/ ^4 Q4 x6 F' R5 ^1 t5 b if name=='seven' and pwd=='123' :
- L( W) u6 p6 M0 ] print('ok')4 g! v! ^' r0 v2 O
else:' U* H7 Y, \; Z& c% _
print('error')
* D7 w8 n+ K2 I$ |# g A3 p; g count += 1c.实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次while 循环
; k$ V) r# E( l8 k8 {. c0 L: _count =1
, _7 E0 ^0 q$ Wwhile count<=3 :) {% I: U: d5 G6 d
name = input('name: ')/ ~& I* v' m# E* e' ^
pwd = input('pwd: ')
# [& Z: J# Q$ e6 B if name == 'seven' and pwd == '123' or name == 'alex' and pwd == '123':6 z0 j% [' k) _; K W# ^3 _& X
print('ok')
% s- B; M; X$ P! t6 l0 j4 T1 L else :
9 X2 D3 W( P( w5 D print('error')
" G3 H) y* ]. M. ~3 N4 z6 S count+=19 b4 T* j4 K. Z# f8 U. x% m. R- \! b
for循环$ t/ \6 m. o; \% `* f( d
for count in range(3) :
( d |/ @' K/ @ name = input('name: ')
/ Y4 O9 j( K1 ?0 [) Y4 h% c pwd = input('pwd: ')9 e V* w& Z8 P
if name == 'seven' and pwd == '123' or name == 'alex' and pwd == '123':
+ ^0 B3 P( l. e& F' L print('ok'); f( h" U8 Q2 K3 |" ]
else :% p4 u$ u1 N* V
print('error')1 l8 {, n0 H5 \4 S% a
count+=111、写代码
/ n! d- C, h$ [( H9 ^a. 使用while循环实现输出2-3+4-5+6...+100 的和2 N/ S2 E, o' R% g9 }3 ^' M6 w
count=2
' O' E8 V& I2 w; pnum=0
$ B3 m: M6 j' iwhile count<=100 :
8 |+ A3 \7 k6 z: {* Z if count % 2 ==0 :8 q7 `8 M9 j- D' c4 |1 W! }
num=count+num
1 _1 O. p. R( w/ P9 ?: b% J count+=1' S; ?" s0 c2 d' T: ^! V
else:
* ~" W: O! S" f$ {" U num=num-count% A/ R; c) L! W' B! d+ R
count+=1+ j( p0 v: \) `7 L, z
print(num)
& Q# H a& |6 W3 W$ Y3 P* q$ |0 K6 W$ x9 E: h9 U0 ~
b. 使用for循环和range实现输出 1-2+3-4+5-6...+99 的和 5 M; n v% J1 ?
num=02 b. \ \/ n/ V6 K4 `, l0 l
count=1) ?; |4 n0 |+ A) e
for count in range(100) :
! s/ \3 Y4 M4 t l' t9 U/ H if count % 2 == 0 :. y& e2 U# A! ^$ i7 a% \8 a# z
num=num - count' @$ U5 w1 c& H, J& Q0 n
else :' @! ?7 j8 `& `3 t
num=num+count7 [( v8 y: K- r7 ~ f4 g) o5 _
print(num) c. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12 % i k4 _! x: J6 n
count=1' q) F8 n3 f: n
while count < 13 :
7 d- i% w. R* A$ T _" S6 [ if count !=6 :5 {" n! u0 w# Z) f9 A
if count !=10 :
# H3 ^' t& f8 U print(count)( W. i& u7 I: A5 W& G: `1 q: A
3 k: }! `3 `; l5 B count+=1d. 使用 while 循环实现输出 1-100 内的所有奇数2 q4 @; G9 w# O" f' n3 H
for i in range(101) :
& K7 t3 ?3 m6 _3 n3 `: t if i %2 != 0 :
; A4 b+ P" b# F/ C- ]% |8 U& c print(i)
/ t6 `2 t& O1 |8 v" [0 `
8 @ L+ T5 y! t: E- i) Xcount=0
9 G+ |% C6 X- r( L# O3 q5 t3 Bwhile count<100 :5 l, |8 U* Q% C2 C0 K0 I: s
if count %2 != 0 :% {8 T' H) o* U, l; v
print(count)
8 O# O2 M0 d3 L2 U! n6 T count += 11 u$ ~, i! H; x1 p
: e! ^0 O4 C* j6 b& xe. 使用 while 循环实现输出 1-100 内的所有偶数3 B2 g2 U3 r, y- m6 a5 {
for i in range(100) :) F5 I4 n' P% v7 h# W& }6 L9 p
if i %2 == 0:
, W8 O# t4 d* b, C print(i)5 |/ M* V' [) ^: `
! U- W% K" D" \. }0 b$ Y" [count=0" {6 x& O% w d# l
while count<100 :
/ B$ `: o' j5 p# O8 P' a' | if count%2 == 0 :5 b. U F5 d2 u- D1 }
print(count)8 V( e1 g- p( F( Y, L4 t
count+=1* [ b+ g- V- F
k" w% h3 n2 q6 E
12、分别书写数字 5,10,32,7 的二进制表示
1 Q, U0 r+ g) s: D0 A+ I* t+ t! O: n
' _1 L8 U; @. h2 g# Bprint(bin(5))二进制 0b101
, S% h# p6 p+ Q6 Nprint(hex(10))十六进制 0x5! h+ Z7 _) J- }; I+ ], u* E% t" h
print(oct(5)) 八进制 0o5$ e% W1 V& t* |' n; M
14、现有如下两个变量,请简述 n1 和 n2 是什么关系? n1 = 123 n2 = 123n1,n2是连个不同的变量名,但值都一样,都指向了同一个内存地址, ( E6 E( L. w' v' y
16、现有如下两个变量,请简述 n1 和 n2 是什么关系? n1 = 123456 n2 = n1n2赋值给n1.指向同一个内存地址,
8 z7 f3 u/ u3 A$ o# @* K9 D17、如有一下变量 n1 = 5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示? n1=5) U; M# m3 H$ y+ O, N( q0 V
print(int.bit_length(n1)) 结果 3 0 H# R: L4 B1 d( ]8 k
# w; F/ Y5 W- ^% v7 A6 r% d/ B
18、布尔值分别有什么?False .Ture ,或1 和0 # g2 g$ b1 K: v
20、写代码,有如下变量,请按照要求实现每个功能 name = " aleX"* @( Q8 H0 |! v, ?
a. 移除 name 变量对应的值两边的空格,并输入移除有的内容print(name.strip()): O1 {+ O! ?! Y% B
; N' |& R+ n- T0 rb. 判断 name 变量对应的值是否以 "al" 开头,并输出结果
: U& ?2 ~6 `5 n& }$ d: Iprint(name.startswith('al'))
+ J5 ~: R9 H) K6 Fc. 判断 name 变量对应的值是否以 "X" 结尾,并输出结果print(name.endswith('x')); J7 e+ ?( q7 w; O( F2 {
d. 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
( l: [8 V/ h- ]% Gprint(name.replace('l','p')) apex
# U- S8 T# J8 Z1 b, D: t9 N4 `e. 将 name 变量对应的值根据 “l” 分割,并输出结果。0 Q6 m' d& \% k( u. O' i
print(name.split('e')) ['al', 'x '] 列表1 G* _, |0 Y! l3 O" N: [9 u- n
6 t3 x8 l6 Y5 S: }0 w. B( m
g. 将 name 变量对应的值变大写,并输出结果print(name.upper()) print(name.lower())i. 请输出 name 变量对应的值的第 2 个字符?print(name[1]); X3 ^ z Y' \
) c& s! h; w+ |j. 请输出 name 变量对应的值的前 3 个字符?print(name[:3])k. 请输出 name 变量对应的值的后 2 个字符? l. 请输出 name 变量对应的值中 “e” 所在索引位置?print(name.index('e'))
`9 ]! i5 P8 ?9 Y21、字符串是否可迭代?如可以请使用 for 循环每一个元素?
( Y2 l0 e4 ~7 j" ~& D9 d依赖索引
; l7 W) q0 _* T, [+ }name = "Alex "; _0 y: E+ X% h. K# a: o
for i in range(len(name)) :, U+ T3 q" `- Z
print(name): f8 _7 E0 ~8 {
for i in name:
+ l8 V5 A( t! y: o- Q3 C7 O( X print(i)22、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain']print('_'.join(['alex', 'eric', 'rain'])) alex_eric_rain
- V4 ]$ O' |% `! u22、写代码,有如下列表,按照要求实现每一个功能 li = ['alex', 'eric', 'rain']li = ['alex', 'eric', 'rain']- q' |+ ^8 ]" k! _4 l7 I
print(len(li))b. 列表中追加元素 “seven”,并输出添加后的列表li.append('seven')
0 |' @2 _/ d0 e6 R3 q+ zprint(li)( L& Z8 I% N- h" d+ J+ h
['alex', 'eric', 'rain', 'seven']
9 N- R- \7 e mc. 请在列表的第 1 个位置插入元素 “Tony”,并输出添加后的列表li.insert(0,'TONY')
( A. _* |, H3 Q% f6 Vprint(li)d. 请修改列表第 2 个位置的元素为 “Kelly”,并输出修改后的列表li[1]=('killy')
. H& q) G( i9 M6 Z3 Vprint(li)8 ]. m% C& ?# g( q! l4 ^6 S" Z5 ` D
e. 请删除列表中的元素 “eric”,并输出修改后的列表li = ['alex', 'eric', 'rain']( n! u$ j7 R( M) d1 j* A8 n: k* B
li.pop(1), n% f8 a3 H$ _" E
print(li) ['alex', 'rain']
' C- t" b) M8 z( k! _6 z指名道姓的删除li = ['alex', 'eric', 'rain']
; O: e4 |, m4 S) }6 R! W, Sli.remove('alex')7 S' S- t$ q$ D5 a
print(li)
) b* f8 p" m- _5 V' t+ i Rf. 请删除列表中的第 2 个元素,并输出删除的元素的值和删除元素后的列表li = ['alex', 'eric', 'rain']
1 Z: ^. B! D j" @print(li.pop(1))0 E5 Q! f# C- k, Q
print(li)- h1 j4 E% l# O, \; X
' M# G w* t5 p2 E4 w! Xeric$ M( }( V( ]" B
['alex', 'rain']h. 请删除列表中的第 2 至 4 个元素,并输出删除元素后的列表li = ['alex', 'eric', 'rain']$ R) \* j' Y$ V# y! A& Q7 B
del li[1:]9 m J z3 }0 v) Z6 t
print(li) k. 请使用 enumrate 输出列表元素和序号(序号从 100 开始)
5 D8 N# i! `! Q& @5 `li = ['alex', 'eric', 'rain']$ Y) A# } ~4 x; x: f# P" Q
for k,v in enumerate(li,1):
# A/ A0 [- i. U, |" ], L0 K print(k,v)23、写代码,有如下列表,请按照功能要求实现每一个功能 li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]3 l* Y9 A/ z D; x. B
a. 请输出 “Kelly”
/ @/ t6 r6 M C! x8 K Jli = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]
" k5 M& I) d( M7 I( dprint(li[2][1][1])5 j0 k. ~. P$ x
b. 请使用索引找到 'all' 元素并将其修改为 “ALL”6 q, |8 a( d* z/ |; u) p3 O
li[2][2]='ALL'
/ F D; o' U5 k6 Uprint(li)
/ O0 q5 M; U5 ?% A$ i# D. c24、写代码,有如下元组,按照要求实现每一个功能 tu = ('alex', 'eric', 'rain')
: \6 x% i) v2 Y0 ba. 计算元组长度并输出tu = ('alex', 'eric', 'rain')' j8 P: Q8 Z+ E/ i, [) x' B
print(len(tu))
( b H$ D7 {3 U: K/ ^b. 获取元组的第 2 个元素,并输出
) j2 ^, y3 C5 l+ m6 c3 \# T7 i6 iprint(tu[1])1 E8 ~) a1 A3 E
e. 请使用 for、len、range 输出元组的索引
1 ]! n8 ?: K6 B6 V! V: `9 ]1 pfor i in range(len(tu)) :
7 W+ B; E# M6 k0 u# x print(tu.index(tu))f. 请使用 enumrate 输出元祖元素和序号(序号从 10 开始)
" e1 l+ \+ O( Ffor k,v in enumerate(tu,10) :: a. N. w" A! C/ d$ p1 k8 V$ a
print(k,v)
( k7 p# z) A' L# t8 t10 alex l2 G$ v. A% ?
11 eric; Y3 e$ |4 r2 t' K
12 rain5 u3 A& m" ^$ Y% N' s
2 F; @# R7 p. W+ z" r& l" ~for k in enumerate(tu,10) :+ K) H- w. t \' `. m; {
print(k)
& q6 n9 |) i: s9 \(10, 'alex')/ h' k0 @5 }9 C5 l) \
(11, 'eric')6 Q& r2 Q A% H& m3 W3 U
(12, 'rain')
5 P2 A, I3 S3 V3 S# A! j5 @. G& F3 B+ k- Y* X# Y7 W
! F( v( ^3 d: L s
25、有如下变量,请实现要求的功能' f% @, X4 O4 R y0 n! C5 q& W
tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])c. 请问 tu 变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”元组,不可以
) K2 e8 {5 b9 U0 `1 C9 Ad. 请问 tu 变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”列表,可以
~6 s; |$ r+ R7 ~tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
3 X M2 \# [$ r9 j; A9 P+ H W4 Hres=tu[1][2]['k2'].append('seven'): S, e& S! L& E8 A6 z5 i
! J$ Y1 J$ i3 r+ n$ Qprint(tu)- c( d+ i: ~- t+ x2 ?
26、字典) a2 [) p% ?& @1 u/ z4 \
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}for i in dic:' l' r; r7 a- w( |( o
print(i)b. 请循环输出所有的 value/ E! Q6 G# b) Z ]# f
for i in dic: o4 m& o$ O7 }/ L
print(dic)
0 F: X2 _& L7 w; V) t1 x$ e/ _c. 请循环输出所有的 key 和 valuefor i in dic:
( |9 w; I( ^$ n+ h" F6 nprint(i,dic)
4 q4 _$ q! M6 A9 `' jd. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
: L9 p% H1 ^2 h/ |, a a4 g) Ddic['k4']='v4'
$ T, q. I$ S5 y4 m% Gprint(dic)
8 f3 T) c- E/ me. 请在修改字典中 “k1” 对应的值为 “alex”,输出修改后的字典1 y' c, h0 \5 ?" d: N7 }- |: F3 I; n
dic['k1']='alex'
4 p" l/ L! N- R9 I$ Eprint(dic)f. 请在 k3 对应的值中追加一个元素 44,输出修改后的字典. w7 A4 s( s) Z& ]3 N% ~
dic['k3'].append(44)* T) B! u9 E1 U- U E$ `4 t
print(dic), I1 ?' y4 Z4 e; a
& g4 _5 G3 ^. E. a: O$ F
g. 请在 k3 对应的值的第 1 个位置插入个元素 18,输出修改后的字典
3 x' p7 l$ L5 }; \dic['k3'].insert(0,44)
: `) m( H: X; qprint(dic)+ D( A* A s, c' m
27、转换' R \" |3 E- {" c
a. 将字符串 s = "alex" 转换成列表 s = "alex"
0 G3 @& J: |7 M+ M; ?
& k$ p1 d* p' r1 zprint(list(s))b. 将字符串 s = "alex" 转换成元祖# `; z4 o* N% H9 k
s = "alex"
- q" b& o# s) t: Vprint(tuple(s))# B8 s' c& G s& n5 ?/ H
% ]- J, _$ P# { fb. 将列表 li = ["alex", "seven"] 转换成元组
* O! m2 M1 Q- G" oli = ["alex", "seven"]: n9 F8 n6 f0 p$ V% N. E/ Y" w
print(tuple(li))c. 将元祖 tu = ('Alex', "seven") 转换成列表
% ~1 q) \ O. |0 S- Htu = ('Alex', "seven"); f- ~- j: D) X; `
li=list(tu)
0 t5 [9 j5 H9 d' a+ h* Yprint(li)! i- u1 O% w% Q: {0 ~
5 T( I) Z# c! j# M8 M
( _3 r& R( Z, K+ s. o) [1 @. [
d. 将列表 li = ["alex", "seven"] 转换成字典且字典的 key 按照 10 开始向后递增/ g# k6 [' [! @2 z' A
0 U. j# G0 X5 D+ g' |% ?dic={}
c# @) |! }5 y. bfor k,v in enumerate(li,10) :----li要放在前面,序号放在后面
6 ]# f/ K+ v4 j dic[k]=v" E0 f0 i9 I/ g/ S6 Q; `
print(dic)27、转码n = "老男孩"
4 V6 B' n8 B6 D9 R3 V9 @+ ja. 将字符串转换成 utf-8 编码的字节,并输出,然后将该字节再转换成 utf-8 编码字符串,再输出n = "老男孩"
V7 m3 s2 d" A1 B5 ~/ Fa=n.encode('utf-8') ; e. h8 H0 ]2 P. x
print(a)
- w; L+ Y4 c4 i2 q9 p _b=a.decode('utf-8')
: A; ~& o2 c \& |7 Q1 aprint(b)4 L6 K/ j3 f- D
b. 将字符串转换成 gbk 编码的字节,并输出,然后将该字节再转换成 gbk 编码字符串,再输出a=n.encode('gbk')1 I- t, D* ]% Q" m
print(a); G1 Q) O- K, q# T3 e8 b. T
b=a.decode('gbk')5 V5 @: M. B* f4 I7 c: N
print(b)28、求 1-100 内的所有数的和
3 A& j& a& M. Ncount=14 H+ e4 m) i% S% g. a( C
sum=0$ D: p% {: {+ l3 g
for i in range(100) :
) P6 n3 u/ ^" y$ @, } g, A% t sum=sum+count- f+ z0 \9 M9 r' w+ x
count+=1
( C5 O2 e" l* Q3 i( W$ n* Rprint(sum)* v" Y) h4 a# o L/ n7 {
; S- n" P7 q0 b0 M# [' q# Acount=1
3 |, D: q5 E0 V$ j8 c9 esum=01 H- X# B% \4 _1 {* j
while count<=100 :6 r6 d; N: ^3 R3 t: j7 _. ~
sum+=count
2 {! I9 l3 K! `; f count+=1
, g3 s" R6 T+ S1 p3 }print(sum)29、元素分类
$ P9 e6 s8 Z/ B1 u% u" [+ l& j有如下值集合 [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个 key 中,
- C; B& v6 ~7 M! u* J5 }9 x将小于 66 的值保存至第二个 key 的值中。
# `8 Y; S5 F4 w# p' |, U" Y8 a即: {'k1': 大于 66 的所有值, 'k2': 小于 66 的所有值}
5 h( b s. z9 f) Hli=[11,22,33,44,55,66,77,88,99,90]
6 B% w4 l( v3 X9 cdic1={% ^0 [; q3 @6 t
'max':[],0 S/ H$ D( M0 A, Z/ ~6 U5 S
'min':[]
: K4 K7 R2 k8 U8 Q# J' j! t* V: \7 K}- ?6 e( N4 x% i( [, ?
for i in li :
! _( C! i9 l0 z- S if i <66 :0 g) V5 W X/ i: l% K
dic1['min'].append(i)
' ]. f5 }3 v8 ?% w6 j else:
/ v3 P' o* T, k3 S/ n( M dic1['max'].append(i)
0 L O& v" }3 T9 h0 eprint(dic1)
' y1 n* b6 {" {% H4 m5 G2 h2 y) q+ K: B9 v6 W1 q
---{'max': [66, 77, 88, 99, 90], 'min': [11, 22, 33, 44, 55]}
; n0 f; q! d5 P. O |