- isalnum()判断是否都是有效字符串
>>> ev1 = 'evilxr'
>>> ev2 = 'ev1il2xr3'
>>> ev3 = '.,/!@#'
>>> a = ev1.isalnum()
>>> print a
True
>>> b = ev2.isalnum()
>>> print b
True
>>> c = ev3.isalnum()
>>> print c
False - isalpha和isdigit可分别判断字符串里是否都是由字符或者数字组成
>>> ev1.isalpha()
True
>>> ev2.isalpha()
False
>>> ev2.isdigit()
False
>>> ev3.isdigit()
False
>>> ev2.isalpha()
False
>>> ev4.isdigit()
True
>>> ev4.isalpha()
False
>>>可以用来检测密码的强度~
>>> xr = raw_input('Please input your password:')
Please input your password:evilxr1234
>>> xr.isalpha()
False
>>> xr.isdigit()
False
>>> xr.isalnum()
True
>>> - 判断字符的大小写
>>> xr = raw_input('Please input your password:')
Please input your password:EVILXR
>>> xr.islower() #xr的内容是小写的吗?
False
>>> xr.isupper() #xr的内容是大写的吗?
True
>>> - 判断是否全由空格组成
>>> xr1 = ' '
>>> xr1.isspace()
True
>>> xr2 = ' evilxr '
>>> xr2.isspace()
False
>>> - 字符的大小写转换
>>> 'evilxr'.upper() #将小写字符全转换为大写
'EVILXR'
>>> 'HEY,WELCOME TO MY BLOG!'.lower() #将大写字符全转换为小写
'hey,welcome to my blog!'
>>> 'Hey,My name is Evilxr!'.upper() #大小写混合的也能转
'HEY,MY NAME IS EVILXR!'
>>> 'Hey,My name is Evilxr!'.lower()
'hey,my name is evilxr!'
>>> - 去掉字符串左面或者右面的空格
[root@localhost test]# cat 1.py
ev1 = ' ev il xr '
print ev1
ev2 = ev1.lstrip() #去掉左边
print ev2
ev3 = ev1.rstrip() #去掉右边
print ev3 [root@localhost test]# python 1.py
ev il xr
ev il xr
ev il xr - 判断字符串的开始和结束
[root@localhost test]# cat 2.py
s1 = '.com'
s2 = '.cn'
s3 = 'www.'
s4 = 'www.evilxr.com' if s4.startswith(s3):
print 'startswith www'
else:
print 'start is not www'
if s4.endswith(s1):
print 'endswith is com'
elif s2.endswith(s2):
print 'endswith is cn'
else:
print 'endswith is not com and cn'
[root@localhost test]# python 2.py
startswith www
endswith is com
[root@localhost test]#
- replace()函数的使用,值拷贝
>>> ev = 'www.evilxr.com'
>>> id (ev)
3078278264L
>>> s1 = ev.replace('e','E')
>>> print s1
www.Evilxr.com
>>> id(s1)
3078278584L
>>> ev1 = ev.replace('ev','EV')
>>> print ev1
www.EVilxr.com
>>> id(ev1)
3078278504L>>> ev2 = ev.replace('evilxr','evilxr.upper()')#upper()被当成了要被替换内容的一部分
>>> print ev2
www.evilxr.upper().com
>>> ev3 = ev.replace('evilxr','evilxr'.upper())#正确的应该是这个
>>> print ev3
www.EVILXR.com
>>> id(ev2)
3078232832L
>>> id(ev3)
3078278704L
>>>#用切片看下
>>> ev = 'evilxr'
>>> ev1 = ev[:3]
>>> print ev1
evi
>>> ev2 = ev[4:]
>>> print ev2
xr
>>> ev3 = ev[:3]+'L'+ev[4:]
>>> print ev3
eviLxr - 域名匹配
re.match(r'^(?:[a-zA-Z0-9][a-zA-Z0-9\-]*\.)*([a-zA-Z0-9][a-zA-Z0-9\-]*?\.[a-zA-Z]{2,6}(?<!\.cn)(?:\.cn)?)$', 'a.b.124.ttt.com.cn').groups()
- python的json.dumps输出中文,指定ensure_ascii参数为False
Signature: json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding='utf-8', default=None, sort_keys=False, **kw) --------------------------------------------------------------------------------------------------------
In [11]: print json.dumps({'test':"西戎的博客园"},ensure_ascii=False)
{"test": "西戎的博客园"} In [12]: print json.dumps({'test':"西戎的博客园"})
{"test": "\u897f\u620e\u7684\u535a\u5ba2\u56ed"}