易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 820|回复: 1
收起左侧

Python基础练习作业

[复制链接]
发表于 2022-6-25 00:00:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
Python基础练习作业/ }& p0 Y: U* x6 {$ R6 ~3 Y
汇率转换器
. v9 R3 |* L" q( b$ J1 ]# 1.获取数据1 w7 I# C- p4 C8 T1 Q4 d& k
usd = float(input('请输入美元:'))7 o5 W% e1 r( |3 K, k. u. ?) b2 L
usd = float(input('please input usd:')): J4 o2 Y4 f- y  W$ ^# n$ r
% b$ W8 c" S9 S/ {2 M+ u
# 2.逻辑计算  B( |- ~4 o0 s) L3 V7 n. |  v
cny = usd * 6.473
( z+ q7 @, `# ?0 {$ x2 X: d# 3.显示结果1 H% p2 E" K( F5 \$ f: e. X
print('%.2f美元=%.4f人民币' % (usd, cny))# E; W* ~' E8 P' R+ I1 M& f
print('{}美元={}人民币'.format(usd, cny))
4 v, D, D+ r# f6 I: B
  [# W: A/ M$ m4 o/ Z) `- k函数-print5 D- f. u( X; W0 B1 y* V

6 ^) h: O- d6 X#1.获取数据-美元" H( c, M' w& S5 k! c+ i( N: V& d
usd = input("请输入美元:")) }) ?* E" Z1 l. C4 W1 \& ?8 v' }* B
#2.逻辑处理 - 美元 * 6.98
  s; Z; ^) i# N* Y$ X
cny =int(usd)*6.99
0 N1 a5 r" @2 `: e7 s$ u9 x& ?5 y
#3.显示结果  - xx 美元四xx人民币7 E9 J0 e) Q7 ?; L6 J9 C3 T' T
print(usd + "美元是" + str(cny) + "人民币"); ~5 Z& }1 i- m( u% N4 ^8 d# U& e7 c

  a, C3 `7 e1 b& Z( z$ i8 l1 ~. P'''
( g: ?! V  C' z) D6 C$ w  练习: 在终端中显示古诗“登高”
2 e, x: z$ q: w3 B) A+ h# {    效果:0 W( ], h  d7 [# p2 ]7 Y5 r6 u6 O
登高
' H6 x: Q. y; [0 C5 Z/ ]作者:杜甫/ \# H; }- q2 R5 U% }3 b6 O
风急天高猿啸哀,渚清沙白鸟飞回。( O7 P- F1 \  ]+ u
无边落木萧萧下,不尽长江滚滚来。9 M! O; S# H- l5 s
万里悲秋常作客,百年多病独登台。
+ O6 g( g+ V" m8 B艰难苦恨繁霜鬓,潦倒新停浊酒杯。
5 S" k, f* o( C, @) o'''1 L( h& d9 n. H' K( ]* |$ P' }. o1 I
print('''\033[31m
) m- }; B1 Y" Z  u. J        登高4 r/ v& V% I4 o2 a1 v3 }1 e
      作者:杜甫
5 I$ o" u' ^6 |; L1 ?- z3 Y1 j( n风急天高猿啸哀,渚清沙白鸟飞回。0 x  x, J8 F6 m7 W2 a) ]. D9 p
无边落木萧萧下,不尽长江滚滚来。
3 @& t7 w: ?- w' H+ K0 V* v万里悲秋常作客,百年多病独登台。0 o4 N, z5 m! ~& C; `
艰难苦恨繁霜鬓,潦倒新停浊酒杯。! u& C6 T5 A! h$ q( Q4 }
\033[0m+ [4 L* p8 H  ]( ]7 p# u' L/ f3 n
''')8 C9 q9 c! L1 `/ }6 @$ k7 S5 V' D
print('-----' * 10)
4 D$ s" p6 Q) _8 \. {0 ~+ U' |. ?) Mprint('\033[31m\t\t\t登高\033[0m')( H' b/ _7 P& |9 y( u$ o7 o
print('\033[31m\t\t作者:杜甫\033[0m')( C4 o) m0 @+ V8 }7 F. s0 q: M
print('风急天高猿啸哀,渚清沙白鸟飞回。'). f! W* O$ a% w  r5 F  J3 p
print('无边落木萧萧下,不尽长江滚滚来。')
7 C: w  E8 \% E  r4 W- ^print('万里悲秋常作客,百年多病独登台。')
9 C2 q" J4 g' o% s  Xprint('艰难苦恨繁霜鬓,潦倒新停浊酒杯。')
+ _4 v' g8 n, Y/ R6 E3 q
; O" V/ l  S% d/ E& \9 R
6 x, f8 `: j! l. I! {函数-input6 i/ }3 J7 r5 E2 q+ A

* n( J9 [% m" S: Z& D+ x# o' t9 Y2 q, p- Q) N! \
7 x3 i. }' T' B1 k: j/ i7 V: h# J. x
##赋值函数
9 u/ V1 R1 o. h. M% g& i: Y& E
title = "登高"
3 Y# {% i$ B" d) X, O1 w* E
auth = "作者:杜甫", [5 p! q' E9 {( b9 }  V2 y
) g# u5 H4 X! F) i2 P
first = "风急天高猿啸哀,渚清沙白鸟飞回。"$ H. ~1 g: L$ g
second = "无边落木萧萧下,不尽长江滚滚来。"
' W" }) ]4 b" v1 O3 J) k
third = "万里悲秋常作客,百年多病独登台。"( `) U$ k7 o% o7 u- B
fourth = "艰难苦恨繁霜鬓,潦倒新停浊酒杯。". E. }$ a4 C1 V5 r8 T

" ?7 `/ y- ~" `( q6 D+ d5 F$ C
##输出结果:##通过ljust(),center(),rjust()函数实现输出的字符串左对齐、居中、右对齐! v. z1 }  X4 x7 a6 T
print(title.center(30))$ g+ n/ \: d5 l2 H; N7 ?
print(auth.center(30))
( X0 Z* ]3 t& k" Mprint(first.center(25))
, P/ O) a# ^: x/ fprint(second.center(25))
/ A$ ^1 K/ ~: g( {print(third.center(25))
: r: }0 w$ ?2 u- Oprint(fourth.center(25))  @. D' |2 }- Y7 @

+ q* x) G& b: u* c. e& R2 }( w8 ~* k2 H# l
: X0 ^& m7 {+ |: y' d5 G3 f' q

* Q# G( N2 h& A# W$ k3 N/ Z练习:判断英文句子成分:I kiss you$ r5 D6 i4 B% X+ D3 C
    效果:- ~1 z9 f7 ?8 Z7 B; l- |& F* t
请输入I kiss you的主语:I
$ i. I3 y' d5 R; d# w0 x' @请输入I kiss you的谓语:kiss
- x) _8 O" _- s: c$ B' `5 K请输入I kiss you的宾语:you
- Q) y& i' ?; C: {. J+ a您输入的主语是:I,谓语是:kiss,宾语是:you    * V7 Y0 c" s6 K/ O+ }+ {2 A
'''
4 q' _! z7 E$ k4 W8 qsubject = input('I kiss you的主语:')
/ K7 C+ h0 T) d% I, ppredicate = input('I kiss you的谓语:')
7 {/ I% Z/ _" @) u% N5 Aobject = input('I kiss you的宾语:')
' ^' `+ j* |, E) N0 v1 jprint('\033[31m您输入的主语是:{},谓语是:{},宾语是:{}\033[0m'.format(subject, predicate, object))- F! ^4 h- l& j/ [# m, e0 V0 z
print('您输入的主语是:%s,谓语是:%s,宾语是:%s' % (subject, predicate, object))$ q$ M; a- V8 \, e
1 C* p( n* {9 T) V7 X
/ i1 z: e+ p% q" _# F+ w

% C3 Z7 r/ ?1 t. r; _: P  ~/ c* {; \
( K& Z; y9 S! h! H
2 H. \, s+ T+ H& a5 {画出下列代码内存图,说出终端打印结果& g$ ?, x! \2 O2 `
# 1.7 C1 q) _& b& h$ G% r* g
name_of_hubei_province = '\033[31m湖北\033[0m'# J5 @9 D; _6 o: u7 ~: A
name_of_hunan_province = '湖南'
4 Y( D; W3 C% P( ]9 bname_of_hunan_province = '湖南省'
/ \) ?/ _" q$ o9 `name_of_hunan_province = name_of_hubei_province
& b2 z8 k* Y: sprint(name_of_hunan_province)/ d9 C/ o. ]" J+ G
# 2.0 a; b# J: @, `) E
name_of_beijing, region = '北京', '市'
& B/ d! ?+ J' q2 A/ V6 X# 拼接后成为一个独立的数据,不受原数据变化影响!!!
; B7 J9 p' ]1 Y$ J" z/ M" s. Hname_of_beijing_region = name_of_beijing + region: D! x7 _1 @; E5 O3 z+ s$ o5 u, R, N
region = '省'
$ ?! ^) R) Z# I0 U0 O) }print(id(region))# d8 ?* ~  a8 }# U
print(id(name_of_beijing_region))
8 L! z) t6 d) F( @+ `: ?! ~0 O; Rprint(name_of_beijing_region)
$ c, H& Z8 L5 y9 X4 qdel name_of_beijing. |' O# X, k+ g# F
print(name_of_beijing_region)% ]# F. o/ y2 G0 b

/ t& K$ I1 z. ?8 M2 E$ F核心数据类型转换
' z* v% H1 y- y) g7 d1 W! j练习:在终端中输入商品单价、购买的数量和支付金额。计算应该找回多少钱。
3 I9 R( G+ r2 h: I2 v7 a效果:. r7 R7 e: j7 Y  S
请输入商品单价:51 `) p5 V& y) i0 j
请输入购买数量:3+ ~+ Q1 W9 e" \3 @
请输入支付金额:20
8 @7 Y* s  I4 L3 B应找回:5.0   
! L/ J% h0 U) `. s, W- x9 e$ q'''
* e/ o  H* x- X/ z1 J6 j2 Cprice = float(input('请输入商品单价:'))
8 Y( t% m% I1 [7 N- m7 ccount = int(input('请输入购买数量:'))# \, n5 M; }. a, s/ F
pay_money = int(input('请输入支付金额:')). I% f7 r7 b" q5 [  h. {3 W6 B
ret_money = pay_money - price * count" _  J* ]; W2 n# k) j* j
print('应找回:{}'.format(ret_money))* M# m7 e  X9 K" y+ y
) d# ?7 |" E: s
5 P6 A  ]2 D$ O  f$ x4 f- z
算术运算符,增强运算符1:6 d. F+ z& T8 i" }7 q' J) l; F, I
在终端中输入一个疫情确诊人数再录入一个治愈人数,打印治愈比例
% l1 _  C5 R" G格式:治愈比例为xx%
, @3 X0 z1 @# y! l效果:3 I* t: V4 Q0 x9 _5 d
请输入确诊人数:500$ m; L" Z7 m& y; n1 r
请输入治愈人数:495
, x+ E% B8 o# B治愈比例为99.0%
' n) Z9 }9 k- z" q5 }2 x* T; K'''
$ G" e9 j" y% Z5 Z  e+ K  Kdiagnose_number = int(input('请输入确诊人数:'))9 h9 G" W6 k* p$ K3 a  A
cure_number = int(input('请输入治愈人数:'))
! @. H) D# v: ~8 H4 M& t. b* o/ \percent = cure_number / diagnose_number * 100
" n+ B& d% W  p  ?& C; Tprint('治愈比例为:%.2f' % percent + '%')
8 Z+ Z. u; S. x2 X; P) Qprint('治愈比例为:{}%'.format(percent))2 }" h+ L. O8 Q" h3 G6 p" b1 d
- v1 Q: k: _' c0 k$ C# x
算术运算符,增强运算符2:
" l9 M# J1 A/ Z- }! N% E: l1 P''', {4 U" e) u$ A+ m
练习:古代的秤,一斤十六两。在终端中获取两,计算几斤零几两。
/ I; C" `) V9 @效果:
$ x2 K3 Q. d! h请输入总两数:100
3 O/ }/ z; X7 X# G0 A0 g4 D! d结果为:6斤4两. m" @" G" H" D0 l" ]  y
'''1 x0 a) f( u: u/ |
weight = float(input('请输入总两数:'))1 s" t8 f- F) o7 F5 g6 J$ D
jin_re = weight // 160 a. O  b" N* ^7 ~+ ]! U. L
liang_re = weight % 16
& j9 g7 m! v9 lprint('结果为:{}斤{}两'.format(jin_re, liang_re))3 c3 y& s& r- H- g, {

4 i2 s, @2 A7 p6 v7 i8 N' I算术运算符,增强运算符3:' E: N$ X/ S& M% p0 b5 [% n, C5 f  R
'''( I, k' }7 Y9 }; j: W* a$ q
练习:
  m! f5 k7 f) j# P" d匀变速直线运动的速度与位移公式:# Q+ h" D9 J+ W" ~4 z
    位移 =  初速度 × 时间 + 加速度 * 时间的平方 / 2
! m+ y- Y8 R  R& w/ c4 a    已知(在终端中录入):位移、时间、初速度9 I- C9 F4 J: e+ j
    计算:加速度
1 k& g6 R# u3 z: ?5 H" o/ P效果:
" F9 T" R/ L- ]$ i) F; X请输入距离:100
9 I# |% b: P5 r- y5 f! a3 c请输入初速度:6
0 g9 w; l0 U. j2 U  `请输入时间:10
1 G5 T: k. z- Y; {, Q8 M. S+ D/ V加速度是:0.80 v3 a: C- b3 u1 P, K' r
'''
4 x0 v8 t/ M) o# @. Sdistance = float(input('请输入距离:'))
) t  i9 D( ^8 @1 Cspeed = float(input('请输入初速度:'))
% m6 E8 t  p( U9 i: ]+ ?3 itime = float(input('请输入时间:'))  r- e$ b/ `+ N  \
acceleration = 2 * (distance - speed * time) / time ** 2
( W: j# l& l) R6 i5 v4 yprint('加速度是:{}'.format(acceleration))
9 `9 m1 n8 b, O  Y5 l# H9 `  A
" A2 u6 _2 k. D& r: `算术运算符,增强运算符4:  ?" R- q5 v+ m  d4 g
'''
  j4 ]/ v- D# ^& z# f: a; O( {练习:在终端中输入一个四位整数,计算每位相加和。
8 U! i* y2 W) A7 W) J9 i例如:录入1234,打印1+2+3+4结果1 r) j6 B' ^4 {: n( }
效果:
; {# U& p' E3 R$ e请输入四位整数:1234
) J9 v- ?, ~7 Y" b2 f% a. t结果是:10
; ^: E. u" A" f0 v6 r7 A'''; D/ P4 [/ O/ @1 n
number = int(input('请输入四位整数:'))
! l" D+ P5 _/ _8 d5 `+ r7 dn1 = number // 1000
0 M7 U" W5 N, ^% [; T/ t4 v; wn2 = number % 1000 // 100: `( r* [2 k- S' c2 Z
n3 = number % 100 // 10
8 U2 s, p, R: [  N+ Gn4 = number % 103 q6 N8 Q1 t2 I7 N  t
result = n1 + n2 + n3 + n4, Y3 u" f! V" m5 j
print('个位:{},十位:{},百位:{},千位:{},结果是:{}'.format(n4, n3, n2, n1, result))8 r' I4 |& q2 O0 {& p8 s" C

0 x3 y' ~; p! F3 T, |+ v8 |& S
5 J/ r# @0 `+ c% F
 楼主| 发表于 2022-6-25 00:00:03 | 显示全部楼层
1.执行Python脚本的两种方式& A# Y3 x# K2 y* V* s& p) Z. d' @1 P
1)调用解释器 Python +绝对路径+文件名称
2 p! [% }$ Z  v8 L7 `* `3 H2)调用解释器 Python +相对路径+文件名称
. t8 v# J  W8 D* l; a) L/ y
* X5 P# w+ c' v/ s2.简述位、字节的关系
. g3 ~: I% E; a' H( H8位为1个字节5 |  M1 _& o; Q: P

, C9 a* }  n  N& u3.简述ASCII、unicode、utf-8、gbk的关系
2 K- s( D- W$ X# V; S; ?* hascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,, L( [/ ^3 C% C+ e2 \
Unicode是为了统一世界各国语言的不同,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间,
- R; f! O2 z% _6 T可以用在内存处理中,兼容了utf-8,gbk,ASCII,$ R& O& p6 G8 J3 y" h# i
utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,
& A) g- x; _* q# ?gbk 是中文的字符编码,用2个字节代表一个字符,$ x" y$ L- \7 z& h- K
8 D8 {8 _* Z2 f0 @$ Y
4.请写出"李杰"分别用utf-8和gbk编码所占的位数
9 w: a9 B2 P. ]: c, o: w. L5 @" @utf-8:48位
+ e0 u7 W% l7 ]gbk:32位, M) _! T. {) D; N

& H* s4 n$ t9 L; w* s, P- s5.Pyhton单行注释和多行注释分别用什么表示?4 C7 j4 n: r8 P
单行注释:#
" g8 V. q* L) n& w$ T5 j, N' S, X多行注释:"""0 c: O* V: J5 a2 T' |" [+ q

! t( O  G3 w9 g" c6 ?" S9 C  b6.声明变量注意事项有哪些?
+ ~& M* K" ^- `/ ~/ U3 h( {0 bPython 与大多数其它语言一样有局部变量和全局变量之分,但是它没有明显的变量声明。变量通过首次赋值产生,当超出作用范围时自动消亡。
7 [1 h" w, `/ d! k1 I3 ZPython 不允许引用一个未被赋值的变量,否则会引发一个异常。
( ?: u, c! l" Q% n2 u# W- z7 W9 M" X. W
7.如有以下变量n1=5,请使用int的提供方法,得到该变量最少可以用多少个二进制位表示?
  @; V8 a: o2 B) ?9 {5位 输出为0b1015 L" H. _7 a  n5 n0 }- ^# J
v2 = bin(int(5))
/ p/ C  z/ t3 S' G. Aprint(v2)
6 }9 D4 h. X( ^: b# P; X" e
! H6 |6 w( i( `" S8.布尔值分别有什么?
5 q6 j/ }$ e$ `% bTrue False2 H2 M3 w/ H3 f
: g4 S% u- a% O2 S) u* {' t
9.阅读代码,写出执行结果
  I1 y& X/ z4 y! r/ k4 G4 Ta ="alex"
3 f9 m' F: s/ z3 Bb=a.capitalize()$ K, ~" a% I% y3 H% s9 k
print(a)2 T9 Z% N# e2 n2 r
print(b)
$ ~8 b+ w1 s' b输出结果
# K1 E  F2 V2 [- z9 S  ~alex( K7 v& W* J  R- e- z* z
Alex
( q+ f# B* O: ^8 b8 q* s) E* _; o5 F  N2 ]* D. t$ E% A/ {
10.写代码,有如下变量,请按照要求实现每个功能/ h% O6 R. C' }" ~# T
# a ="alex"
* e1 U+ q5 m3 e# b=a.capitalize()
7 J# f$ N8 ]/ `# print(a)0 V  R7 U* \/ z8 v
# print(b)$ U' J" W7 d1 Y2 t' v, f
name = " aleX"& P$ _& o$ u/ h) _' L) n
# a.移除name变量对应的值两边的空格,并输入移除后的内容/ F, h- j) E: P' j$ |
n1=name.strip()' K9 n- ]% x1 |+ r' T0 P$ r
print(n1)# Z  v/ V/ i8 D/ r/ n" i. |6 O) c7 C4 ^
#b.判断name变量对应的值是否以"al"开头,并输出结果
; G9 `1 D3 R! U8 _: ?+ |n2=name.startswith("al")
9 w3 A: _6 x3 Y! Mprint(n2)* Q6 Q$ d1 C" b7 b* a/ \
#c.判断name变量对应是否以"X"结尾,并输出结果) N- y# |6 F* _5 J3 S
n3=name.endswith("X")
0 b; K& I4 t# w& j' z5 T6 G9 y  a& kprint(n3)
& l* h  ]. G1 w. S' f2 N$ h  }#d.将name变量对应的“l”替换为“p”,并输出结果
+ i) ^* l9 b2 ?7 D2 R  x' {, q; Cn4=name.replace("l","p")+ d7 P: |) ]' r0 W5 `. r
print(n4)
0 A8 [8 b% f# `. N# @  H#e.将name变量对应的值根据“l”分割,并输出结果- w; M, \0 c" ]( U* W: D
n5=name.split("l")7 e0 D; P: b% }# t7 @3 l
print(n5)
5 o) H- o; e% Q# _#f.请问,上一题e分割之后得到值是什么类型7 Q8 j# j: \* J, Q6 ]. K/ o
#列表
6 x* F/ A! z" Z2 d1 }- C#g.将name变量对应的值变大写,并输出结果
' r# U, t6 [: A5 ^' ?# |- _' c" yn6=name.upper()" C% @) r2 f3 U3 h+ U7 n
print(n6)8 g' d. G4 B# r9 D; n$ Z
#h.将name变量对应的值变小写,并输出结果" P9 ^( e* j2 w, N9 v7 s/ o
n7=name.lower()
) k* r, v  I- O% @print(n7)* p# A3 k/ j8 z# F$ W$ j
#i.请输出name变量对应的值的第2个字符2 @$ M" r: W7 {* g: c0 \
n8=name[2]
7 v* C$ \& U9 S  Y4 @% [print(n8)
/ T8 W& S; v+ [! v#请输出name变量对应的值得前3个字符" L7 b- C3 r9 ~, z
n9=name[0:3]7 P% u* n* k" m' Q# F6 e
print(n9)
4 M/ W7 |; f: B9 x! m+ I2 k* t/ Z#请输出name变量对应的值得后2个字符
3 X3 g* D# u. R: {8 U4 [+ @n10=name[-1:-2]
9 l0 _& _5 w# ]* y/ t4 W- ^; [6 \# Nprint(n10)
2 A. p1 m( Q* ~9 E) |#请输出name变量对应的值中"e"所在的索引位置
3 e! U% j9 v+ K2 w0 W1 [) sn11=name.find("e")
4 D* w: N9 [5 Wprint(n11)
: F" t) _! K) @( }+ i% N) m#获取子序列,仅不包含最后一个字符,如 oldboy则获取oldbo;root则获取roo
# B7 q# Q2 m8 T: M6 {; D2 i8 \n12=input(">>>"). E7 Q& @  ?" O
l=len(n12)+ S$ D. `( p( D$ }0 g
n13=n12[0:l-1]! p" U% Q" D' \8 [, ]2 u
print(n13)
- s+ t3 F* C- R! }
4 X" g6 z, q6 e21.字符串是否可迭代对象?如可以请使用for循环每一个元素?- z  B# X: D  X. g
字符串可以迭代" o4 t0 P. G- d  i5 t7 l) Y
#将文件按照索引打印出来
+ ~& a& K- n! M$ @3 I. Z3 f0 Jtest = input(">>>>")
; y) l$ M% O7 Gfor item in test:: Y) X6 G, P3 ?) R  L# v' _
print(item)! F& b( F  C, w( {1 r

8 l3 w2 S/ ?; k5 X" z$ D8 X22.请用代码实现2 `/ s5 s( g7 x. o7 n9 ^& B' `6 [- W
# a.利用下划线将列表的每一个元素拼接成字符串,li = "alexericrain"8 K7 h4 H# u+ I0 p
li=['a','l','e','x','e','r','i','c','r','a','i','n']6 k! ]5 `7 I3 }* S- U: X2 T6 r
li1='-'.join(li)
  ^, D: V9 k+ K/ @+ }, f1 Eprint(li1)
6 c4 |3 U% E9 j" l############################################################################
2 r1 q1 k& m4 q7 q5 s4 Y# b.利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain']
+ k1 g: q0 a+ ^' s4 @) gli2 = ['alex', 'eric', 'rain']2 }" J: t5 D8 h) A' _
li3=''.join(li2)
3 y2 U' e0 U' e; fprint(li3)
0 Y/ o' Y: R0 z5 U# I6 m############################################################################
6 v' i9 P/ J9 e' v" {5 @$ a4 B. `+ ~! g" \0 s  @8 |; Z; `% p
23.Python2中的range和Python3中的range区别* b0 ^8 b/ z; ~, \
Python2中的range会直接在内存中生成序列
( H9 p! [' v  |% P/ B5 I( K. j4 qPython3中会生成一个范围,实际上节省了内存空间& z! j7 B& `# e% h( T$ _+ C

1 T/ [) |9 ]  C* |1 o24.如何实现一个整数加法计算器,如 5+9或5 +9或5 + 9* Z8 D1 O/ L% T6 z$ d) `
content = input('请输入内容:')
8 X: q8 v( C6 E: m6 B3 C6 P# _print(content.replace(' ',''))3 Q) X1 z5 e, H% n. A
( A. }7 C3 p3 I  ]2 P" k
25.计算用户输入内容有几个十进制小数?几个字母?6 o! ~" E$ N9 ?3 ^! m1 [8 Z9 V
content = input('请输入内容:')( M7 i0 ~& ~& C/ }$ q1 \
import re& b. p) Y3 m! d+ N
#字母0 z8 U' g. [" x& K
y = len(re.findall(r'[a-z]',content))9 Y5 M( A+ f3 |/ y# R' W4 e5 ?/ i  J
print('出现的字母个数为:',y)  e6 F: Z! k, p0 ~1 e8 ^$ {. X, M# a
#数字
: F: o' U+ G1 \. ]  S. Lz = len(re.findall(r'[0-9]',content))! h, j/ r3 F/ G) h/ C0 @
print('出现的数字个数为:',z)- `6 z, a0 P) N1 Y
6 S& ~( |% r7 l0 Q9 b
26.简述int和9等数字以及str和"xxoo"等字符串的关系
1 l! [1 v7 p( g类和对象的关系" _! J% P4 w/ y3 X7 \7 l

! W! N0 C& P7 a3 o& Q27.制作趣味模板
- q% R" f- i% d需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意实现, K/ S5 y1 f' k- c2 d; n6 Q% M& M
test = "敬爱可亲的{0},最喜欢在{1},地方{2}"* E* J4 H( _4 {) \- s) c7 l% S4 {
name= {input("输入名称")}
" M2 Q9 Y( @7 `. p+ zplace= {input("地点")}
# E$ h, I  I  i  D# W3 c: Odoing={input("事件")}
) b$ \1 a$ ^! ~0 r4 Q7 p" Xprint(test.format(name,place,doing))" ?5 F) S0 `* ?1 h1 l) h! w
3 H6 W1 \9 X& K) d
28.制作随机验证码,不区分大小写  E/ u, T8 J* N* w; D/ i" U1 W( G
####################################################################################
$ Z3 f# `5 |+ I- ^4 |. B+ x% b" n! c# def check_code():
- `( p) w6 f2 L1 Z/ p# import random
1 C; i/ U" B: i. E+ }+ K- C# checkcode = ""4 q( c* g: H( R( x7 z+ H
# for i in range(4):7 S7 i$ U! h3 A* {. D
# current = random.randrange(0,4)
& W7 ~) u+ _6 O  X/ {+ j9 Y4 _# if current !=i:5 o0 ?* Q3 k( b. p
# temp = chr(random.randint(65,90))
( G4 o( [- \# z+ j6 x# else:
' T1 F! M  h7 V2 c9 _1 U# temp = random.randint(0,9); P, G" q" K" g; v" _
# checkcode +=str(temp)# j! ^" I& K  i. F, t
# return checkcode()
. q$ n' ~/ t8 h6 s( q7 J# while True:
" a1 E$ z) [; B# code = check_code()- w6 i6 Q! r! S4 D6 e6 z' }1 Z
# print(code)0 }0 ?" s! w+ m* O
# app = input("请输入验证码:")3 F$ r# z2 L6 Q$ C% M! D* ~: V
# if code.upper() == app.upper():! ?$ a/ f, z# F0 O$ z0 J0 k
# print("输入正确")6 Z" {0 V( ~* i( k' ^- R
# break
; h) o6 w- r5 [: \2 X/ t: G$ `# else:
5 F& \5 _4 P  W' S# print("输入错误")/ ^1 W9 h9 g4 Y) E) j. F" Q# s
# s = input("是否重新输入?")
* V2 v/ W% ]3 E; C, V# if s == "no":, O& ^* H+ o5 M( d  F8 T* \2 c
# break1 k0 q6 ?; S, I& h& O" U; T
# else:) g: Z/ K( {! g) c. x
# continue! ]! X. p, v# T! F2 H9 d
############################摘抄至网络#############################################  q' Y: {; Y* O3 G* ?

' s* x$ ]) d( g: K1 f/ L29.开发敏感词语过滤程序,提示用户输入内容,如果用户输入内容中包含特殊的字符:“苍老师”、“东京热”,则将内容替换为***' J1 q2 k6 j# A( [" k
v=input(">>>")
2 K) g& }9 s0 L6 I3 c3 O/ N2 qv1=v.replace("苍老师","***")& I, ^4 K9 ^5 A% c" |# G
v2=v1.replace("东京热","***")' m* f' `4 z2 S% G( H
print(v2)
. z  i: B$ u1 R4 @% A$ E" e+ O$ Y, c! n- d- e  H, U, y' N9 {
30.制作表格
. q1 o+ \( N$ `循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20个字符,如果超过则只有前20个字符有效)
* g  O- D: c( W0 u9 S. k如果用户输入q或Q表示不再继续输入,将用户输入的内容以表格形式显示。5 u  S% `$ T- B  ~' s0 G$ }
7 h. ]" O- V* c: h  b
s=""4 w1 ]' T! {- c9 t; B
while True:6 h' [/ s& z( v8 W& S# o7 z
name= input("请输入用户名:")
3 M0 P6 @  |4 _8 Iif name =="q"or name=="Q":, `: e- |3 n6 k/ Q
break8 F$ X& K1 w9 X! F  r2 e4 X- B* q
if len(name)>=20:
/ c1 Y# ]' O6 c9 s7 _; x4 sname = name[0:20]
  [3 X' i7 `/ Apwd = input("请输入密码:")9 W+ h9 u, \3 k& B& i+ w% f
if len(pwd)>=20:
2 ~  t% b9 I! I9 g$ t- b$ W/ a0 O) mname = pwd[0:20]
- u# c6 O+ z% H3 demail=input("请输入邮箱:")  q) u8 W' h: s# }' d6 g8 V: O
if len(email)>=20:
( b! }2 [* o  `( c- Fname = email[0:20]
: Y- h1 l  C( mtemplate = "{0} {1} {2} "8 n5 E! z( F2 u* `4 C: V" W, D
v=template.format(name,pwd,email)( e% ?/ X) l& f  k4 S: Q! D  L; W8 Q' i
s +=v( ~) l1 P4 R$ Z- d* D. c
print(s.expandtabs(20))
0 g! o* H; z+ ?
' H$ R$ ]6 O* }* GWin a contest, win a challenge
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 21:19 , Processed in 0.056838 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表