Python总结(精简)
编码风格使用4空格缩进,而非TAB。
在小缩进(可以嵌套更深)和大缩进(更易读)之间,4空格是一个很好的折中。
TAB引发了一些混乱,最好弃用。 折行以确保其不会超过79个字符。
这有助于小显示器用户阅读,也可以让大显示器能并排显示几个代码文件。
使用空行分隔函数和类,以及函数中的大块代码。 可能的话,注释独占一行。 使用文档字符串。
把空格放到操作符两边,以及逗号后面,但是括号里侧不加空格:a=f(1,2)+g(3,4)统一函数和类命名。 总是用self作为方法的第一个参数。
字符串利用三引号(’’’)或(”””)可以指示一个多行的字符串,在里面可以随便使用单引号和双引号。 它
也
是
文
档
字
符
串
DocStrings>>>defdoc():HiHipass>>>printdoc.__doc__HiHi>>>文档字符串第一行应该是关于对象用途的简介。
如果文档字符串有多行,第二行应该空出来,与接下来的详细描述明确分离。
转义符:what\\sup等价于“whatsup“\\\\表示反斜杠本身行末单独
的一个\\表示在下一行继续,而不是新的一行:aaaaa\\dddd等价于aaaaadddd原始字符串r如果我们生成一个“原始”字符串,\\n序列不会被转义,而且行尾的反斜杠,源码中的换行符,都成为字符串中的一部分数据。
>>>hello=r“Thisisaratherlongstringcontaining\\n\\serverallinesoftextmuchasyouwoulddoinC.“>>>printhelloThisisaratherlongstringcontaining\\n\\serverallinesoftextmuchasyouwoulddoinC.>>>hello=“Thisisaratherlongstringcontaining\\n\\serverallinesoftextmuchasyouwoulddoinC.“>>>printhelloThisisaratherlongstringcontainingserverallinesoftextmuchasyouwoulddoinC原始字符串的最后一个字符不能是“\\”,如果想要让字符串以单“\\”结尾,可以这样:>>>printree\\\\ee\\如果是printree\\则会返回错误;如果是printree\\\\则会返回ee\\\\字符串可以由+操作符连接,可以由*操作符重复。
相邻的两个字符串文本自动连接在一起,它只用于两个字符串文本,不能用于字符串表达式。
>>>str.strip()str>>>strjklstrjkl>>>str.strip()jklSyntaxError:invalidsyntax>>>str.strip()+jjjstrjjj字符串不可变,向字符串文本的某一个索引赋值会引发错误。
不过,组合文本内容生成一个新文本简单而高效。 >>>word=thank>>>word[0]t>>>word[0]=fTraceback(mostrecentcalllast):File““,line1,inword[0]=fTypeError:strobjectdoesnotsupportitemassignment>>>word[:4]+gthang切片操作有个有用的不变性:
i[:s]+i[s:]等于i。
>>>word[:4]+word[4:]thank值被转换为字符串的两种机制:str、reprstr函数:把值转换为合理形式的字符串repr:创建一个字符串,以合法的Python表达式的形式来表示值>>>printrepr(hello,world!)hello,world!>>>printstr(hello,world!)hello,world!>>>printrepr(1000L)1000L>>>printstr(1000L)1000L与raw_:>>>raw_(e:)e:aa>>>(e:)e:aTraceback(mostrecentcalllast):File““,line1,in(e:)File““,line1,inNameError:nameaisnotdefined>>>(e:)e:aa>>>a=raw_(e:)e:123>>>type(a)>>>b=(e:)e:123.01>>>type(b)>>>raw_(e:)e:1+21+2>>>(e:)e:1+23由上面的例子可以知道,两个函数均能接收字符串,区别是raw_()直接读取控制台的输入(任何类型的输入它都可以接收),而()在接收字符串的时候需要加上引号,否则会引发错误。
此外,在接收纯数字方面,()具有自己的特性,并不是像raw_()一样把所有输入都当做字符串看待。
除此之外,()会接收合法的python表达式1+2返回int型的3。 字符串大小写变换:lower()小写upper()大写swapcase()大小写互换capitalize()首字符大写title()只有首字符大写,其余为小写。 用
于
转
换
字
符
串
为
标
题:>>>that\\sall,folks.title()“ThatSAll,Folks“string模块的capwords函
数:>>>importstring>>>string.capwords(that\\sall,folks)“ThatsAll,folks“字符串在输出时候的对齐:ljust(width,[fillchar]):左对齐,输出width个字符,不足部分用filchar补足,默认的为空格。 rjust(width,[fillchar]):右对齐。 center(width,[fillchar]):中间对齐。
zfill(width):把字符串变成width长,并在右对齐,不足部分用0补足。
>>>string.capwords(what\\sall,forks.).ljust(20)“WhatsAll,forks.“>>>string.capwords(what\\sall,forks.).rjust(20)“WhatsAll,forks.“>>>string.capwords(what\\sall,forks.).center(40)“WhatsAll,forks.“>>>string.capwords(what\\sall,forks.).zfill(20)“000WhatsAll,forks.“字符串中的搜索和替换及其他常用方法:find(subsrt,[start,[end]]):返回字符串中第一个出现substr的第一个字母的标号,如果没有subser则返回-1。
start和end的作用相当于在[start:end]中搜索。
>>>srrrtripoopp.find(trip,-1,-4)-1>>>srrrtripoopp.find(trip)4index(subsrt,[start,[end]]):与find一样,只是在字符串中没有substr时,会返回一个运行时错误。
rfind(subsrt,[start,[end]]):返回字符串中最后出现substr的第一个字母的标号,如果字符串中没有substr,返回-1.rindex(subsrt,[start,[end]])。
count(subsrt,[start,[end]]):计算substr在字符串中出现的次数。
相关推荐: