暑期学习记录02
来源:互联网 发布:linux的w命令 编辑:程序博客网 时间:2024/06/05 17:18
python
字符串的相关操作
切片(slicing)
选择字符串的子序列
语法 [start : finish]
start:子序列开始位置的索引值 finish:子序列结束位置的下一个字符的索引值
【如果不提供 start 或者 finish,默认 start 为第一个字符开始,finish 为最后一个字符 】
文件操作
打开文件 f = open(filename, mode)
mode 有 r(读,默认),w(写)等
按行读取文件内容
for line in f: pass
关闭文件 f.close()
写文件 f.write(str)
字典序(Dictionary order)
首先比较两个字符串的第一个字符
如果相同,则比较下一个字符
如果不同,则字符串的大小关系由这两个字符的关系决定
如果其中一个字符为空(较短),则其更小
字符串格式化(Formatting)
format 方法,如:
括号的格式 {field name:align width.precision type}
print "hello {} good {}.".format (5,'DAY');print math.piprint 'pi is {:9.4f}'.format(math.pi)print 'pi is {:.4f}'.format(math.pi)
结果为 hello 5 good DAY
3.14159265359
3.1416
3.1416
正则表达式
.[ ]^$
四个字符是所有语言都支持的正则表达式,所以这四个是基础的正则表达式。正则难理解因为里面有一个等价的概念,这个概念大大增加了理解难度,让很多初学者看起来会懵,如果把等价都恢复成原始写法,自己书写正则就超级简单了,就像说话一样去写你的正则了:
等价:
等价是等同于的意思,表示同样的功能,用不同符号来书写。
?,*,+,\d,\w 都是等价字符
?等价于匹配长度{0,1}
*等价于匹配长度{0,}
+等价于匹配长度{1,}
\d等价于[0-9]
\D等价于[^0-9]
\w等价于[A-Za-z_0-9]
\W等价于[^A-Za-z_0-9]。
常用运算符与表达式:
^ 开始
() 域段
[] 包含,默认是一个字符长度
[^] 不包含,默认是一个字符长度
{n,m} 匹配长度
. 任何单个字符(. 字符点)
| 或
\ 转义
$ 结尾
[A-Z] 26个大写字母
[a-z] 26个小写字母
[0-9] 0至9数字
[A-Za-z0-9] 26个大写字母、26个小写字母和0至9数字
, 分割
分割语法:
[A,H,T,W] 包含A或H或T或W字母
[a,h,t,w] 包含a或h或t或w字母
[0,3,6,8] 包含0或3或6或8数字
语法与释义:
基础语法 “^([]{})([]{})([]{})$”
正则字符串 = “开始([包含内容]{长度})([包含内容]{长度})([包含内容]{长度})结束”
?,,+,\d,\w 这些都是简写的,完全可以用[]和{}代替,在(?:)(?=)(?!)(?<=)(?
题目内容:**依次判断一系列给定的字符串是否为合法的 Python 标识符。**输入格式:一系列字符串,每个字符串占一行。输出格式:判断每行字符串是否为合法的 Python 标示符,如果合法则输出 True,否则输出 False。输入样例:abc_def21gh输出样例:TrueTrueFalseimport re def isIentifier (s): if re.match('[a-zA-Z_][a-zA-Z0-9_]*', s): return True else: return False params = [] #定义一个列表while True: s = raw_input() if s == '': break else: params.append(s) #输入未结束 添加列表元素for s in params: if isIentifier (s): print 'True' else: print 'False'
match :只从字符串的开始与正则表达式匹配,匹配成功返回matchobject,否则返回none;
search :将字符串的所有字串尝试与正则表达式匹配,如果所有的字串都没有匹配成功,返回none,否则返回matchobject;(re.search相当于perl中的默认行为)
- 暑期学习记录02
- 暑期学习记录01
- 暑期学习记录03
- 暑期学习记录04
- 暑期学习记录05
- 暑期学习记录06
- 暑期学习记录07
- 暑期学习记录08
- 暑期学习记录09
- 暑期学习记录10
- 暑期学习记录11
- 暑期学习记录12
- 暑期学习记录13
- 暑期学习记录13
- 暑期学习记录14
- OpenStack暑期学习记录-20130719
- 暑期学习
- 暑期学习
- Segmentfault 内容精选
- 浅谈ZKW线段树
- 用递归写最小钱币数
- H
- java 将list按照指定数量分成小list
- 暑期学习记录02
- ViewPager的 setOffscreenPageLimit(0) 方法
- 如何在Android中使用Realm数据库
- 【笔记】Java 文档注释
- 如何提升产品经理的会议沟通效率?
- poj3461 KMP模板 或 哈希
- 实现二分查找
- I
- 同余定理 应用于大整数取模