8 c1 T' M! b( C5 T, H" u5 u+ Qc = [line.strip() for line in open('file.txt')] 8 q6 |4 ]) o9 `7 }8 ^6. 将字符串写入文件 # W; ]) [; S8 L8 T# ^$ Y3 K对比于其他编程语言常用的open、close去读写文件,Python提供的with方法更加简单,而且不用特意去关闭文件: ' r6 a, r( t( [0 i0 D: k : D! h/ O& T5 b3 H- N+ T' i0 `5 F3 [$ d2 z) H7 C# G6 \0 V5 S
with open('file.txt', 'a') as f: f.write('hello world')4 v$ f) Z& X% A/ x4 x5 o
7. 创建清单 $ B( W" v/ y7 x, D: h% ?2 c可以使用内联for循环从其他列表中动态创建列表。您可以直接修改值,例如,下面示例中的字符串连接: 0 w- p2 v5 s) y - z" {& G F: D5 B& \; @9 b , |3 W+ c% B( l. P' f/ P- d5 e, tl = [('Hi ' + x) for x in ['Alice', 'Bob', 'Pete']] ; T n7 @$ J. {/ b8 b0 c# ~# print(l) >> ['Hi Alice', 'Hi Bob', 'Hi Pete']/ P0 \' e$ U4 N% U6 n3 U9 s' a
8. 列表映射/ ^( l! r1 @, o+ b) y Y4 v( f; P: g
可以使用Python的 map()函数将每个列表元素转换为另一种类型: 8 z3 v1 _4 G8 g0 |- V/ t( e4 n0 I+ P4 d( \
7 k. J' E4 L9 T$ o1 ]* ^7 y$ F
l = list(map(int, ['1', '2', '3'])) 4 Q( a r& e: P6 U8 M: P5 T$ r# print(l) >> [1, 2, 3]0 H7 O! A, M3 A. s P/ z& }
9. 集合创建" D" @* i0 l0 n, U5 E- k+ c7 z
列表达式除了使用简单的for循环语句,还可以结合条件语句一起使用: 5 W% [6 H3 q" S% y/ H( W, K t! j& X! O8 R+ s# s# d( @) |+ \
; R# A \1 B* Y9 a% p0 ]. F. d" O
squares = { x**2for x in range(6) if x < 4 }4 ^7 F; n! P, K9 L
# print(squares) >> {0, 1, 4, 9} ! V A9 G* ~/ \* D* y$ n10. 回文检查 7 X" R1 m' f" y8 Q( {! S4 P回文检查是笔试题经常会出现的一类问题,简单来说,它就是向前和向后都读取相同的字符,这也难倒了不少应届毕业生,利用Python,一行代码就可以完成: 2 j& s8 Q9 f) N x" Z2 L) O, I - F+ K9 o* c: `: s; Y ) h! G% P2 \2 U$ c' x- I6 U# phrase = 'deleveled'* S6 N6 ]1 g( o+ ~5 }0 _ v& d
isPalindrome = phrase == phrase[::-1]& v% h+ d3 e2 a, T1 f/ H! C
# print(isPalindrome) >> true 1 `9 k1 I+ N8 d结语- m4 |/ Z" \ ]! a1 F' S; J( C8 n
进阶Python过程中,会涉及的编程技巧远不止于此,要想深入并精通Python,需要我们持续学习,并且不断的总结。 % V. p+ n, Y P% J, X* I 5 B' ]- l) r1 W: y. H; d, w+ j- R) H( n3 r! u! A% A& M
提升编码技能最简单有效的方法可以总结两点:“多看别人代码,多让别人看自己的代码”。' |' d4 J* _( p# F4 o2 ^% s
% E+ M6 D. c4 j. V 1 e! u+ ~' D( A! i; u3 `9 n$ f不同人的思路,实现方法不尽相同,看别人代码过程中,可以看到与众不同的编码方式,可以从中汲取一些优点。 0 o. c$ |9 X% y1 C # B% g/ ]: X9 ]! k/ a' Q P1 a 1 x N8 E v& |6 Z. Y( o, u% c多让别人review自己的代码,能够不断的鞭策、激励自己改掉编码过程中的不好习惯,错误用法。 w" i8 T8 `1 E$ z; q! y
, p/ h' X# y+ M