概述
一、字符串
1.判断子串
判断一个sub字符串是不是属于s字符串:
[root@desktop31 ~]# python
>>> s = 'redhat'
>>> 'a' in s
True
>>> 'red' in s
True
>>> 'rel' in s
False
>>> 'a' not in s
False
2.重复、连接及计算长度
[root@desktop31 ~]# python
>>> print '==='*10
==============================
>>> print 'hello'+'world'
helloworld
>>> print 'hello'+' world'
hello world
>>> s = 'hello world'
>>> len(s)
11
3.字符串的类型转换
str(obj) 将其他类型内容转换为字符串
int(obj) 将字符串转换为为整数
float(obj) 将字符串转换为浮点型
long(obj) 将字符串转换为长整型
4.字符串常用操作
str.capitalize() ##将字符串首字母大写,并返回新的首字母大写后的字符串;
>>> s = 'hello'
>>> s.capitalize()
'Hello'
str.center(width[,fillchar]) ##返回一个长为width的新字符串,在新字符串中原字符居中,其他部分用fillchar指定的符号填充,未指定时通过空格填充。
>>> s.center(20,'#')
'#######hello########'
>>> "welcome to user manage system".center(50,'*')
'**********welcome to user manage system***********'
str.count(sub[, start[, end]]) -> int ##返回sub在str中出现的次数,如果start与end指定,则返回指定范围内的sub出现次数。
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".count('colord')
3
str.endswith(suffix[, start[, end]]) ##判断字符串是否以suffix结束,如果start和end指定,则返回str中指定范围内str子串是否以suffix结尾,如果是,返回True;否则返回False
str.startswith(prefix[, start[, end]])
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".endswith('sbin')
False
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".startswith('sbin')
False
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".endswith('nologin')
True
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".startswith('colord')
True
str.isalnum() ##判断是否都是字母或数字
>>> "w4_".isalnum()
False
>>> "w4".isalnum()
True
str.isalpha() ##判断是否都是字母
>>> "w4".isalpha()
False
>>> "wgfgd".isalpha()
True
str.isdigit() ##判断是否都是数字
>>> "w4".isdigit()
False
>>> "2144".isdigit()
True
str.islower() ##判断是否都是小写
>>> "wgfgd".islower()
True
>>> "wgfGd".islower()
False
str.isspace() ##判断是否都是英文空格
>>> "".isspace()
False
>>> " ".isspace()
True
str.istitle() ##判断是不是都是标题(首字母大小写)
>>> "hello".istitle()
False
>>> "Hello".istitle()
True
str.isupper() ##判断是不是都为大写字母
>>> "Hello".isupper()
False
>>> "HELLO".isupper()
True
str.replace(old,new[,count]) ##将str中的old字符串替换为new字符串,并将替换后的新字符串返回,如果count指定,则只替换前count个字符串
>>> "colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin".replace('colord','redhat')
'redhat:x:995:992:User for redhat:/var/lib/redhat:/sbin/nologin'
tr.split([sep[,maxsplit]]) ##以sep字符串作为分割符对str进行切割,默认为空格,maxsplit代表切割的此处
>>> ip = '172.25.254.31'
>>> ip.split('.')
['172', '25', '254', '31']
str.swapcase() ##大小写替换
>>> 'hEllO'.swapcase()
'HeLLo'
####### 例子 #######
1.检测变量名是否定义正确
#!/usr/bin/env python
#coding:utf-8
import string
alphas = string.letters + '_'
nums = string.digits
print "欢迎进入变量名检测系统V1.0".center(50,'#')
print 'Test string must be at least 1 char long'
variable = raw_input("输入检测的变量名:")
if len(variable) > 0:
if variable[0] not in alphas:
print '变量名必须为字母或下划线开头!!!'
else:
for ochar in variable[1:]:
if ochar not in alphas + nums:
print '无效的变量名!!!'
exit(1)
print '%s 变量名合法!!!' % variable
else:
print '变量名长度必须大于0!!!'
2.要求用户输入一个英语句子,统计该英文句子中含有单词的数目
#!/usr/bin/env python
#coding:utf-8
str = raw_input("please input a english sentence:")
str1 = str.split()
print len(str1)
二、列表
1.列表的定义
定义一个空列表
li = []
定义一个包含元素的列表,元素可以是任意类型,包括数值类型,列表,字符串等均可。
li = ["linux",3,"redhat"]2.列表的索引
下标是从0开始计算,比如list[0]读取的是列表的第1个元素
list[-1]读取的是列表的倒数第1个元素
3.列表的切片
li[0:3:2]
4.列表的添加
列表可通过append方法添加单个元素
li.append("hello")
列表可通过extend方法添加多个元素
li.extend(['westos','haha'])
在指定位置添加元素使用inert方法
li.insert(0,'world')
修改列表的元素:直接重新赋值
li[0]='hello'
6.列表的查看
查看某个列表元素的下标用index方法
li.index('linux')
查看某个列表元素出现的次数用count方法
li.count('hello')
7.列表的删除
删除单个元素
li.remove('hello')
li.remove(li[1])
删除整个列表
del(li)####### 例子 #######
编写一个stack.py,要求:输入O时出栈,输入U时入栈,输入V时查看栈的元素,输入Q时退出#!/usr/bin/env python
stack = []
print """
welcome to stack manage
p(U)sh
p(O)p
(V)iew
(Q)uit
"""
pro = "Enter choice:"
while True:
choice = raw_input(pro).lower()
if choice == 'u':
item = raw_input("new item:")
stack.append(item)
elif choice == 'o':
if len(stack) == 0:
print "can not pop from empty stack!"
else:
print "%s pop from stack!" % stack.pop()
elif choice == 'v':
print stack
elif choice == 'q':
print "quit stack manage!"
exit(0)
else:
print "please input u|o|v|q!"
三、元组
1.元组的定义
定义空元组
t = ()
定义单个值的元组
t = (1,)
一般的元组
t = (1,2,3,4)
2.元组特性
不能对元组的值任意更改
name,age,grade=("tom",16,89)
3.元组的操作
元组也属于序列,可执行的操作如下:索引、切片、重复、连接和查看长度
4.删除元组
####### 例子 #######
要求用户输入一个英语句子,统计该英文句子中含有单词的数目和词的种类
#!/usr/bin/env python
str = raw_input("please input a english sentence:")
str1 = str.split()
print len(str1)
a = set(str1)
print len(a)
最后
以上就是刻苦高山为你收集整理的python---字符串、列表、元组的全部内容,希望文章能够帮你解决python---字符串、列表、元组所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复