暑期学习记录02

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.pi
print '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

_def

21gh


输出样例:

True

True

False


import 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中的默认行为)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值