- 积分
- 16843
在线时间 小时
最后登录1970-1-1
|

楼主 |
发表于 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 |
|