找回密码
 注册
查看: 828|回复: 1

Python基础练习作业

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2022-6-25 00:00:02 | 显示全部楼层 |阅读模式
Python基础练习作业; ?7 W( D! u! _$ T5 ^
汇率转换器/ v3 b5 I8 g. p3 N7 L
# 1.获取数据
/ B& S3 s  B) Z8 P' ^3 ausd = float(input('请输入美元:'))
3 M7 V% X' b- [$ q- ausd = float(input('please input usd:'))
  G% c9 @: z1 o3 Z' o+ l/ Y
+ |6 e7 M0 j: r: G$ V. S# 2.逻辑计算- H) c$ A% e! B% X
cny = usd * 6.473
( `. p) ^( N4 T7 U# 3.显示结果  z! N+ E% i2 e' G9 V
print('%.2f美元=%.4f人民币' % (usd, cny))/ ^; f& v8 F* R; o- }9 G/ z; Y( `
print('{}美元={}人民币'.format(usd, cny))" c8 c( n6 X9 i/ z
/ Z  q* J' Y7 T) Q* w& U4 k
函数-print
* z. N; a7 ^1 }; @# p
, H, _( R- l6 x; T# D" ^' F7 W3 H#1.获取数据-美元
' N3 N" ?  S$ B& |0 I- |
usd = input("请输入美元:")
  U- S- r, e7 V0 y& N/ {
#2.逻辑处理 - 美元 * 6.98, `0 Z0 R5 e8 T3 U1 ~- D
cny =int(usd)*6.99/ p, R* ]6 l0 r! C# m( ^
#3.显示结果  - xx 美元四xx人民币
! o6 O! o; U9 X" e* F0 V6 ^3 ~
print(usd + "美元是" + str(cny) + "人民币")
& o8 I( S+ r( ]5 l7 ^
2 e' i, r0 G8 k$ Z5 U6 I'''
2 @/ p7 Y' l. X* j. X  练习: 在终端中显示古诗“登高”# i/ I8 i! g$ q) u. j
    效果:8 t' V( V  b  V6 g3 J; `
登高
  \& y5 `0 |  ~  ?6 b作者:杜甫8 @# e) n. d0 b4 c
风急天高猿啸哀,渚清沙白鸟飞回。  c) k& ]# c) a1 W6 h6 m
无边落木萧萧下,不尽长江滚滚来。
7 O$ B( G8 O- h! v5 \  {万里悲秋常作客,百年多病独登台。
! ?2 k! ~! \  |* `艰难苦恨繁霜鬓,潦倒新停浊酒杯。5 T/ K* b. ^0 }9 A9 G
'''
2 }% g& a# B3 Hprint('''\033[31m
; ^* A& d: R: i- V, q$ t* `        登高
2 B# r- J. Z7 X! R% Y# v      作者:杜甫5 Z* V( F+ s" H) i
风急天高猿啸哀,渚清沙白鸟飞回。
; Z$ c% o+ o3 T! L无边落木萧萧下,不尽长江滚滚来。
! v" o" E9 U5 d7 ~5 `8 r: ~万里悲秋常作客,百年多病独登台。
0 z9 l! b) C. s/ z! [* O艰难苦恨繁霜鬓,潦倒新停浊酒杯。
6 V0 D, F* S- m8 V( o$ B" W\033[0m4 f0 R/ Z0 x- M7 S& D. [/ ?) {
''')
& _# M1 l. e/ H! i/ v5 dprint('-----' * 10). a7 n, u; X: m* l% [
print('\033[31m\t\t\t登高\033[0m')
& b4 x, R! T# U- ]print('\033[31m\t\t作者:杜甫\033[0m')2 N: B7 i- @( l9 U
print('风急天高猿啸哀,渚清沙白鸟飞回。')' c" c3 q0 h5 J  I* \0 L' `3 e
print('无边落木萧萧下,不尽长江滚滚来。')
5 m+ ]; o7 G1 ~5 K% X7 }8 eprint('万里悲秋常作客,百年多病独登台。')9 n2 U7 @1 _! A0 L$ ]2 o
print('艰难苦恨繁霜鬓,潦倒新停浊酒杯。')
8 w. ~* b' R/ ~, n8 \2 A3 Z8 B2 w% K( y5 F3 f4 ~+ |% V0 T
8 G; O( K! S: X3 p* j0 v( @7 T; ^
函数-input
# G# P9 a$ W! T  t+ k2 {# C! p+ `$ p' h8 k7 h4 i( G5 }

: Z9 z+ e. a5 s
7 K8 z3 H/ e1 M8 v8 W3 q# r: [##赋值函数' A2 G' f( s, ~+ w) q9 G1 p1 p, p
title = "登高"2 B1 q; R; g2 H3 O8 d. j
auth = "作者:杜甫"
6 z" G1 ^/ d) \+ c: e  P% b9 X
; l# M% ~. n8 X1 g3 @
first = "风急天高猿啸哀,渚清沙白鸟飞回。"
% ?3 A  n2 C; b4 n* F$ z/ Q
second = "无边落木萧萧下,不尽长江滚滚来。"
) ^) P9 Y/ R5 i' F$ l
third = "万里悲秋常作客,百年多病独登台。". m! l+ x6 w( q7 O
fourth = "艰难苦恨繁霜鬓,潦倒新停浊酒杯。"
9 l1 y6 C+ t1 B4 u+ r0 T5 t3 p5 o

* b/ f* L  Z; |! w
##输出结果:##通过ljust(),center(),rjust()函数实现输出的字符串左对齐、居中、右对齐8 U3 |* p5 ~% E/ x* |; G  l
print(title.center(30))
6 h- Y; L# M7 b/ H" J( @print(auth.center(30))5 Q- m) T2 m/ q. e: n+ S) J" t
print(first.center(25))5 C) n' J! v! D: G9 ?& x: H
print(second.center(25))8 t$ H! r4 Z% c8 u, m
print(third.center(25))9 w, t9 p+ F# a9 n( z5 n
print(fourth.center(25))
6 ?  T! C$ c, g8 w
; U# E& h# l) u) ?' u7 d
; m) X4 j+ [! c" L) R7 Q. H6 J" p" j: v; f
, g2 Y0 V; C: G# t, v
练习:判断英文句子成分:I kiss you
" b; o* W( i$ k9 o/ m+ y7 G. c    效果:
! X0 k1 Y+ M! D- I2 ?; m5 g请输入I kiss you的主语:I
5 C& y, D3 W9 r2 W3 ^" m请输入I kiss you的谓语:kiss% q1 s9 h' ~! L+ A* f( `
请输入I kiss you的宾语:you; c5 l8 G; i/ X7 S4 T' d
您输入的主语是:I,谓语是:kiss,宾语是:you    1 `# B, `1 [* b4 @0 [
'''
/ M* F% s& |7 R7 g. ?subject = input('I kiss you的主语:')
7 L* ^) f; m( B( }& W: Lpredicate = input('I kiss you的谓语:')
7 n  s+ I) ]  e$ ~. k6 ^object = input('I kiss you的宾语:')3 P7 c! p& _" L+ w' ]# ~% @
print('\033[31m您输入的主语是:{},谓语是:{},宾语是:{}\033[0m'.format(subject, predicate, object))
" t; C% I$ X" v- V, u. P% Rprint('您输入的主语是:%s,谓语是:%s,宾语是:%s' % (subject, predicate, object))
+ e) g8 I; T7 S( Z$ Y1 E; x7 B2 o  w* D: v% W1 E8 h- h1 {$ N7 O$ A5 j
4 t+ W5 }# G4 W- Z6 L! A! _/ g' G

" Y, ^5 I7 Y/ }; m/ Q- s# `% d7 \. c/ ~3 a2 v& u

1 v' n  c4 r- J' @. x4 T. i画出下列代码内存图,说出终端打印结果
) A. |4 w. w+ t/ a( ~3 Y( x# 1.
  N1 @0 Z; D% q# T1 K. O4 t" Y# Hname_of_hubei_province = '\033[31m湖北\033[0m'
' |1 |7 V: v- Y7 [$ _0 p! rname_of_hunan_province = '湖南'
+ b0 d9 ^2 M/ b! ename_of_hunan_province = '湖南省'
9 F% Q! K; c  i/ S$ f) a9 oname_of_hunan_province = name_of_hubei_province0 _. Q! l8 O, J& a  G$ H+ R& z- [: K
print(name_of_hunan_province)% U0 z* Q3 ?/ r4 y2 w2 H4 Z
# 2.- ~" n4 U: H* z, X0 ?7 T
name_of_beijing, region = '北京', '市'# V- z6 i: d$ [" |4 d
# 拼接后成为一个独立的数据,不受原数据变化影响!!!% p/ o5 j9 f) L; R
name_of_beijing_region = name_of_beijing + region
$ j+ E+ C/ ~5 Bregion = '省'
0 o8 ]5 {9 W2 a+ aprint(id(region))
8 ?1 W8 S; S. J7 b& n' W& C* bprint(id(name_of_beijing_region))9 g5 {( k) V" @6 k5 h
print(name_of_beijing_region)( J/ F0 G5 k7 c! k! @$ H, O
del name_of_beijing
+ |: [. m" `$ p: O+ K/ z" t, ~print(name_of_beijing_region)( J$ Y1 ]" S& H/ H$ Q- q/ F) q

" m, V! ~: y# j: K) O  d( Y核心数据类型转换; ^. }0 |8 I! ]3 l3 W
练习:在终端中输入商品单价、购买的数量和支付金额。计算应该找回多少钱。
9 }- \* r6 v* h$ p8 {) d效果:7 `7 h: p3 J$ J6 K- I1 {9 K
请输入商品单价:5
; z  d" d. J* W; f: B+ w3 F% @& v% M& y请输入购买数量:3
6 ~7 l0 B! d9 s请输入支付金额:206 p2 B% [" r0 e$ |2 x
应找回:5.0   
7 M. a/ h# \6 n6 x& D'''
, j! B6 ~' F. U4 V+ eprice = float(input('请输入商品单价:'))' b# N, u3 x2 f9 J3 o7 ]- r  [% {
count = int(input('请输入购买数量:'))6 I$ @, V! G  \
pay_money = int(input('请输入支付金额:'))
6 r4 |- q* i! @8 Z- V, B8 K1 }+ Eret_money = pay_money - price * count! |8 _9 {; e: b% @0 V& d. B1 c. \) R
print('应找回:{}'.format(ret_money))
; P2 p% y. o4 y( j( m
5 R  A. N6 p' p$ c8 f" C
  m: z& T* t: K: B! E算术运算符,增强运算符1:% v  n8 M/ W2 Q( a  I- W
在终端中输入一个疫情确诊人数再录入一个治愈人数,打印治愈比例
8 _; ?! F6 r& p4 i格式:治愈比例为xx%: F6 c6 k' S2 ^4 }8 p
效果:6 o/ P  u+ r: |* A, B
请输入确诊人数:500
; P: J; @  }, [6 Q/ m& V( P请输入治愈人数:495) w! X4 y5 F% g: ~+ [( V
治愈比例为99.0%
- V& }3 [* z4 p. o'''/ {. c2 h) @3 y. F
diagnose_number = int(input('请输入确诊人数:'))
( e, |; e( D( h! Jcure_number = int(input('请输入治愈人数:')). ^, P0 [  U# p1 |1 H  o
percent = cure_number / diagnose_number * 100
+ F% {  o$ W' `* M; oprint('治愈比例为:%.2f' % percent + '%')
7 m6 x0 o. e  o4 g1 @) k! x) p. y, bprint('治愈比例为:{}%'.format(percent))1 ]! {# Q! r: y. U' `9 k+ s
2 @) y, w2 R, V9 I
算术运算符,增强运算符2:( F1 H! R5 g2 A* _- O, ?
'''
) n2 t! [+ ?  Q0 {练习:古代的秤,一斤十六两。在终端中获取两,计算几斤零几两。
1 l2 Y" d' a' W效果:2 e0 Y. L6 |, L) [* V
请输入总两数:100
/ @% _' m3 H+ N% u5 ?  ?结果为:6斤4两+ v, B6 U- l( D! f# V# Y9 ^0 H' g
'''
& m1 a* a" b% F. B; ]weight = float(input('请输入总两数:'))
; H1 F/ Z- A9 y, l7 R* l0 bjin_re = weight // 166 N9 F5 }6 S8 ?
liang_re = weight % 16- {5 `. m8 I" i: x1 R" l- \
print('结果为:{}斤{}两'.format(jin_re, liang_re))3 Y: b7 H  t% N4 `. c

/ f7 t) _. u2 L算术运算符,增强运算符3:3 H2 }, `4 t1 Y( e3 p. q/ ~% O
'''  B6 K/ n% x) |% u7 j4 g
练习:
! P3 U/ I9 @. _匀变速直线运动的速度与位移公式:
; d7 o" p6 \  E; y4 s0 ]4 i1 w3 `    位移 =  初速度 × 时间 + 加速度 * 时间的平方 / 2# j: `! U* b+ G" k
    已知(在终端中录入):位移、时间、初速度
. t# D% @# K  s  P/ U    计算:加速度
0 W$ i1 j- ^9 y. q+ G/ S. I效果:
# I$ K) ?% v: ~: J0 f! y请输入距离:100
/ }& o9 b+ k' s! _9 @/ i1 K! f请输入初速度:6
: S) \0 A2 X# ^6 [5 P. o请输入时间:101 L* Q9 h, _3 r" B
加速度是:0.8$ @7 k3 O& B* H# x
'''
! s% s9 Q. J' ~) [2 Ldistance = float(input('请输入距离:'))( M. j- k/ [' _# e& \1 v9 ~) r
speed = float(input('请输入初速度:'))
* h' }7 r3 R9 e. Qtime = float(input('请输入时间:'))
- S! q6 x3 D3 P' w, {* c7 Xacceleration = 2 * (distance - speed * time) / time ** 2) [$ m* s4 E$ U& S
print('加速度是:{}'.format(acceleration))
# d, a* q+ ?4 |! D4 N4 p# I" }/ q  e4 W+ u3 y+ [% n
算术运算符,增强运算符4:7 N2 T( D& f2 m( S
'''$ K# T8 g  g8 @, @
练习:在终端中输入一个四位整数,计算每位相加和。
" H8 \* G" p; N+ L- ]3 T例如:录入1234,打印1+2+3+4结果: ^" f: u% p( [2 x2 c# }- _! m6 w4 X
效果:6 v8 s7 q& e- o
请输入四位整数:1234
; z4 ^0 h  u6 z" @$ J- ]+ h结果是:10
, e. M2 G# J1 n3 z) }1 Q'''! o' d' T5 K5 ]) h. b4 o( z" ?$ T8 p
number = int(input('请输入四位整数:'))7 B/ ]9 E$ h: |/ h5 r
n1 = number // 1000
' g1 S6 @0 S! D) v2 ]" u7 C" u2 Wn2 = number % 1000 // 100" n& N6 o% T: m- E
n3 = number % 100 // 10! r4 L0 G- y5 }$ t1 T
n4 = number % 10! h7 u: e& x% `4 f1 d- Q$ t: b7 A. q
result = n1 + n2 + n3 + n4' l/ G5 A) m+ M7 r& r
print('个位:{},十位:{},百位:{},千位:{},结果是:{}'.format(n4, n3, n2, n1, result)), h* l- @7 z3 F9 O9 R" t0 L

0 [) F3 ]% H) E, {! V0 |8 X# c4 Y7 e$ g5 _

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2022-6-25 00:00:03 | 显示全部楼层
1.执行Python脚本的两种方式# X* W5 ^- E+ h) G0 v/ L6 U
1)调用解释器 Python +绝对路径+文件名称, R$ G, q- o6 F& @6 }
2)调用解释器 Python +相对路径+文件名称
, [, h! s8 s, m: t- n. _% }# M/ B0 ^& f6 Y
2.简述位、字节的关系0 @" A5 p3 O/ q1 W% r7 |4 @
8位为1个字节* ?9 t; r4 W9 d, K/ V
# d) }* B3 K( [! b/ y8 h
3.简述ASCII、unicode、utf-8、gbk的关系# S9 v' F& @1 _* f
ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,
) D7 k" I1 a0 v4 u6 U) MUnicode是为了统一世界各国语言的不同,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间,6 R0 F1 G9 S5 d' N
可以用在内存处理中,兼容了utf-8,gbk,ASCII,
9 \: }  L8 H: n5 V  Kutf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,3 w  z. _/ c% Y, b4 \
gbk 是中文的字符编码,用2个字节代表一个字符,) ^4 c5 {6 }% ]( ?
$ m+ B2 n, T. H1 H; i. m1 C
4.请写出"李杰"分别用utf-8和gbk编码所占的位数
+ m* k: t! b/ n9 I' ]utf-8:48位' W6 h0 q) E. I% F3 Q
gbk:32位" t6 c( s/ g* r
+ [  Q  K9 y" ?; R1 Q* C
5.Pyhton单行注释和多行注释分别用什么表示?
" J' T& F- p' l! O# F8 ?1 S/ s+ S单行注释:#
3 K! \( b" E$ a- x. w$ Q; S5 h多行注释:"""
7 s: i: d8 `2 D0 H4 H/ A% l* u# s% b: E, m- V! f! s" W
6.声明变量注意事项有哪些?
1 k% N/ \3 o3 ~: r  i3 h! QPython 与大多数其它语言一样有局部变量和全局变量之分,但是它没有明显的变量声明。变量通过首次赋值产生,当超出作用范围时自动消亡。
7 u0 `* H/ ]$ V( h% w1 b3 @( _- DPython 不允许引用一个未被赋值的变量,否则会引发一个异常。
2 r8 N0 r& X& i" V
3 r& [$ A1 U( d. b5 ]# E6 z0 d; X7.如有以下变量n1=5,请使用int的提供方法,得到该变量最少可以用多少个二进制位表示?
& U0 i2 E+ T0 j$ y; K, e& C5位 输出为0b101& F  B* c) Z; A2 e5 t" C
v2 = bin(int(5))
" q; y" j* U4 ?9 Hprint(v2)" b% s0 A- `' Y1 J, u. g

. j4 L/ r* P( H! s8.布尔值分别有什么?* Y9 a' p1 L8 A( {+ K4 u7 S
True False- g' u' x. i! g5 E! \: \$ ?1 \

6 [5 {* n' P/ e8 a, [5 {! T9.阅读代码,写出执行结果! l2 Q9 q+ n$ J9 m# k' z: |4 y
a ="alex"  Y; k$ T  p5 H3 r6 V- C( r
b=a.capitalize()) K% x4 N& u/ j3 K: h* w
print(a)
* @1 j: ^. W  i+ l: `. U2 Gprint(b)
8 K3 d0 I( O+ g# A" R. F# S输出结果* I+ i( y9 s, t" c2 h! g; X: s
alex) W, D# j! x' g, Y- H+ M
Alex0 X* Q; u* j* V$ a

# z' C3 x: u( Z) J& h/ {10.写代码,有如下变量,请按照要求实现每个功能8 f( |: Z. j2 x# s
# a ="alex"
8 U" j% x& e' T* W& `1 Z% G; M# b=a.capitalize()9 r. _7 M/ J. k. Q9 v, o/ i: A! P
# print(a)
/ n, w/ y" p' _9 W0 i) |; X$ y# print(b)4 f" x0 T! W) ?) u4 y% t
name = " aleX"( _: E( t5 p1 x1 v
# a.移除name变量对应的值两边的空格,并输入移除后的内容
  `; P4 d7 ^& ln1=name.strip()  S1 P/ D" x  L
print(n1)' b% O2 S. p1 c- h
#b.判断name变量对应的值是否以"al"开头,并输出结果
7 j8 r1 X# ^0 ?% e! `+ gn2=name.startswith("al")4 k) l, V" T  m* m" n
print(n2)9 o# x# r) o, v5 Z0 S2 D
#c.判断name变量对应是否以"X"结尾,并输出结果
+ H) t/ V' M- ^: L9 k6 e0 A0 |, Yn3=name.endswith("X")
7 ?" ]5 ^, v; W& \" wprint(n3)
& |5 V, Q* h: X  k0 e#d.将name变量对应的“l”替换为“p”,并输出结果
8 i6 t0 y/ e1 [* |n4=name.replace("l","p")
9 k! ?( c- M$ p. T& k: xprint(n4)
1 z, [: r" U( D+ M& h#e.将name变量对应的值根据“l”分割,并输出结果. I, k* a# [6 l
n5=name.split("l")
0 m$ H5 O% i+ I$ P2 V7 `" a0 f9 Aprint(n5)
7 k+ S% d* L+ S( S/ |2 n#f.请问,上一题e分割之后得到值是什么类型% ^8 c7 q. d$ W$ e
#列表% k2 Q, s( m4 z6 _8 J6 W& `
#g.将name变量对应的值变大写,并输出结果
! V% h/ X  a+ n3 S) un6=name.upper()
# w& H5 I; y  G% [. Oprint(n6)
0 }" ^! q8 D. i0 S' m#h.将name变量对应的值变小写,并输出结果
% P; @, f1 U2 ~% x% d( L" j; _n7=name.lower(), T% @! a6 A' }5 `, b9 T
print(n7)% V0 O7 Q5 Y; Q2 T# v" Q6 Z
#i.请输出name变量对应的值的第2个字符; f4 @8 a* L5 |/ d
n8=name[2]
: V0 K( i& \* t- w. W# f8 oprint(n8)
% Y: w6 B- ^1 g) }#请输出name变量对应的值得前3个字符
+ w1 k$ C- [0 c0 y* Jn9=name[0:3]
0 t& @( R& b- \' a" j+ Kprint(n9): c# l! B- c$ r5 M9 A$ L' O( ~
#请输出name变量对应的值得后2个字符
  W0 Z6 D  K2 mn10=name[-1:-2]
" g7 b7 J4 x- [1 K: v$ v# Eprint(n10)
% f$ e% F4 E& I. f#请输出name变量对应的值中"e"所在的索引位置& W* f3 w0 |' }8 p8 w
n11=name.find("e")
$ }2 o  E$ n9 @+ m. E/ _" ]print(n11)$ L& d4 \+ n3 N! w
#获取子序列,仅不包含最后一个字符,如 oldboy则获取oldbo;root则获取roo6 X3 \- \1 c' \6 O9 R, T9 g3 R
n12=input(">>>")
/ h3 P9 D' y  _! Hl=len(n12), N/ m4 q& n: P" t' C
n13=n12[0:l-1]+ D8 U, ]& b; y/ d
print(n13)
  O+ Z8 ~8 e7 U/ K6 c* L8 `
; T/ U( F  n4 H: @% p21.字符串是否可迭代对象?如可以请使用for循环每一个元素?: a: ?; w. ?* q2 U- X: s) r6 O( k% \
字符串可以迭代
( r% Z: n: v5 b! T#将文件按照索引打印出来0 ~/ a, m/ u& v4 a7 k, V0 S. r  `
test = input(">>>>")2 k1 ^7 n* Z2 V+ R2 o; x9 O9 R4 E
for item in test:1 r* t% c; R. ^! }5 L- F
print(item)2 V! Y" H! g8 _/ O% {
1 ~5 g: \+ Q- e% C) O0 t; e
22.请用代码实现
" C, h+ r! W0 p! n# a.利用下划线将列表的每一个元素拼接成字符串,li = "alexericrain"; H7 x# t! y- E9 y) l
li=['a','l','e','x','e','r','i','c','r','a','i','n']
$ K) {- D# y8 t! o  M& _7 oli1='-'.join(li)
. v; z4 e! y8 B+ @4 |/ i; U) rprint(li1)1 f9 R4 `: W/ z0 P( j) y2 h/ x
############################################################################
/ W, ~  D, Y- k) q0 \, {6 [8 S% s4 C# b.利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain']
- K0 I" {& y8 u& b! D9 @: Kli2 = ['alex', 'eric', 'rain']5 Z2 I; _2 {( Q. B& l
li3=''.join(li2)# Q" M, w' k4 X0 n4 Q, M, [2 k
print(li3)
/ q5 v: G- d4 u; }0 {% n############################################################################, l) ]% o: t; d/ D* h1 w

! X" i3 M* ~3 [- y. t. B0 j23.Python2中的range和Python3中的range区别
# j7 ?" B- Z" _$ c( X  o0 A$ ]Python2中的range会直接在内存中生成序列
* x9 b+ z! _- dPython3中会生成一个范围,实际上节省了内存空间
/ v. B8 u7 E9 e: T5 Y+ d
4 o  l+ a6 C5 L+ u, e24.如何实现一个整数加法计算器,如 5+9或5 +9或5 + 98 P5 V9 A, @; o0 p; B$ k, @
content = input('请输入内容:')
# d( v3 f$ E9 {, wprint(content.replace(' ',''))
* a' @7 ]9 j! ^5 N
! p$ h1 [$ W6 R. U$ d25.计算用户输入内容有几个十进制小数?几个字母?1 F7 T# j; P: u; P7 `% ?
content = input('请输入内容:')
- a6 w0 f5 s5 gimport re0 h0 u0 T6 O7 }% s- p$ V
#字母( O! q: |; N0 e5 \9 A4 G+ U) H" _+ j
y = len(re.findall(r'[a-z]',content))
- ?( j; f' U2 {" j! Rprint('出现的字母个数为:',y)
" P4 ^# ^2 u( ?$ W#数字+ X$ O7 b# Y* w* U
z = len(re.findall(r'[0-9]',content))
4 N4 W0 e( w& C7 S  J# Jprint('出现的数字个数为:',z)0 W: [1 a/ [4 V
0 T  W5 f$ [& K1 T( r/ c
26.简述int和9等数字以及str和"xxoo"等字符串的关系" [# \1 l+ U& U3 u7 y
类和对象的关系
8 W* n% O1 f" v4 W& ~& g
; Y2 U) {0 f! Z- O; \27.制作趣味模板, @, D: z5 x) L8 n
需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意实现: r% N% u* U5 T% Y6 G8 l0 G
test = "敬爱可亲的{0},最喜欢在{1},地方{2}"8 W7 v: F* J* g0 C' S
name= {input("输入名称")}
& g) S3 g9 Z4 D/ |) I/ Jplace= {input("地点")}
, J) H. v' ~' z4 idoing={input("事件")}  B1 O0 p8 X5 \3 f1 _$ C4 X
print(test.format(name,place,doing))
/ O( C5 @$ I6 [0 M" {$ f) k* d" L5 i& E, v. x# M, z: c+ F, H( r
28.制作随机验证码,不区分大小写
1 I4 A2 B* D6 F' c1 u6 {( q####################################################################################
: m7 `  Q2 |0 P- ?  {# def check_code():% x+ d1 i" F) T+ E! V( B; R
# import random
$ g) j8 _0 {4 l) `% K! }# checkcode = ""6 u4 J. M  }- d9 \
# for i in range(4):
6 H) x4 @1 U# q+ @) f9 ~8 q# current = random.randrange(0,4)
' u9 x# E6 i- l6 g/ P% w% m# if current !=i:- [  {% g/ S1 P' L7 u5 r
# temp = chr(random.randint(65,90))! |( z/ \5 s, C4 ~, {# t" Z
# else:
2 c) T. f$ i5 Z% C1 Z9 q# temp = random.randint(0,9)8 S' O1 G0 u: y% ~6 e2 G
# checkcode +=str(temp); J' T6 d: o) r5 C( N) U4 z5 U
# return checkcode()
. c/ b' \) D; m- D, h# while True:
/ v; |9 H% c4 j% u/ b# code = check_code()
" _9 f" Z/ z3 O) h3 [. I7 C# print(code), A, m5 o& V$ d- s! k$ w. [
# app = input("请输入验证码:")
) H# V7 L6 _9 n# if code.upper() == app.upper():$ u1 N0 i5 R0 Z
# print("输入正确")
* B; B' [6 C7 U! b# break
) V% _+ L3 c) d; F* Q* M# else:
: B+ L4 e+ u+ U: O# print("输入错误")
* _: w8 _) c$ S) d- g5 k7 _# Q8 o# s = input("是否重新输入?")
) k" x" C, t+ ?: M# if s == "no":
! B3 B& v+ Z8 G, H4 G# break
" Z# j( B  Z; S2 H# ^# else:
# V6 H& q& S: i! C  T# continue
, y: }% |( p3 `############################摘抄至网络#############################################
5 E6 S: n2 f- g1 q. U4 }. v! n- h  s5 _  J
29.开发敏感词语过滤程序,提示用户输入内容,如果用户输入内容中包含特殊的字符:“苍老师”、“东京热”,则将内容替换为***
: {/ Y5 M7 a5 v; t$ I2 o6 vv=input(">>>")& A1 f$ \/ U. ^6 a
v1=v.replace("苍老师","***")2 t, Z/ n- s; j5 a
v2=v1.replace("东京热","***")4 a, T2 x* j: Q% K3 i
print(v2)
' A& H0 Z) }& I- `1 |, _1 L% C( q' B5 U( i" C5 D# \
30.制作表格5 ?" J( v7 r* b) Z% X
循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20个字符,如果超过则只有前20个字符有效)" G. ?7 u6 J/ E$ n, f
如果用户输入q或Q表示不再继续输入,将用户输入的内容以表格形式显示。' E& M: P) }0 x7 V' h
3 m3 ^! k/ N$ ]# \
s=""
/ {4 C5 `% i& h2 L. \% B2 Wwhile True:0 \/ M3 q1 A5 L. b" q; b! {
name= input("请输入用户名:"): `9 T6 Z: o9 z8 e
if name =="q"or name=="Q":
) R$ c- u5 C) U5 Fbreak9 {7 d: D. q1 r( d3 W( f0 n
if len(name)>=20:; z9 D" {% j/ E. j
name = name[0:20]
* J6 Q/ a# n! R& ]" y. T. `pwd = input("请输入密码:")
  I8 H3 a4 J! t# Kif len(pwd)>=20:3 @& _6 A3 l) A% v2 Y+ F
name = pwd[0:20]& r; O, S! H6 t) X4 N2 |
email=input("请输入邮箱:")
% c4 w, x+ \% k* X/ `/ s) P2 Pif len(email)>=20:
7 E. M$ N5 A3 P3 K# ]( ^name = email[0:20]
1 h3 z: H. {- ^2 y( ntemplate = "{0} {1} {2} ") z$ T! A9 u) q: S$ a4 e
v=template.format(name,pwd,email)
5 g! u( \  Q$ i# {s +=v$ x# {9 P" Q! A5 E
print(s.expandtabs(20))9 c  T9 ?2 |  z4 d+ B$ p5 F+ I

/ e% Y3 K' ]: Y  b7 C% xWin a contest, win a challenge
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 00:25 , Processed in 0.026561 second(s), 21 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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