1.字符串可以通过相加的方式连接为一个字符串
2.占位符
格式化字符 转换方式
%c 转换成字符
%s 优先用dtr()函数进行字符串转化
%d /%i 转成有符号十进制数
%f 转成浮点数
测试题:输出终端
#!/usr/bin python
#encoding:utf-8
#**************************************#
# Author :wang #
# Email :wang@qq.com #
# Version : #
# Create_Date:2017-12-23 20:44:47 #
# Description: #
# #
#**************************************#
print """
*******************************************************
显示命令行提示符
*******************************************************
"""
tip = "[root@desktop /]#" #定义tip字符串
def test(tip):
while True:
cmd = raw_input(tip).strip()
if cmd == "quit": #输入为quit退出
break
elif cmd != "": #输入为非空
print "run %s"%(cmd)#输出run cmd
continue
else: continue #输出为空继续循环
def main():
test(tip)
if __name__=="__main__":
main()
测试题:乘法口诀表
#!/usr/bin python
#encoding:utf-8
#**************************************#
# Author :wang #
# Email :wang@qq.com #
# Version : #
# Create_Date:2017-12-23 21:43:48 #
# Description: #
# #
#**************************************#
print """
*******************************************************
乘法口诀表
*******************************************************
"""
h="%d*%d=%2d " #字符串h为打印乘法口诀表的格式
def ChengFaBiao():
for i in range(1,10): #i是乘法口诀表第一个数
count = 0 #count记录循环次数,口诀表三角性
for j in range(1,10): #j是乘法口诀表第二个数
if i-count != 0: #如果循环次数不超过改行要显示的字符串数
print h%(i,j,i*j), #显示字符串逗号表示统一行显示
else: #超过改行显示字符串数
print #输出空表示换行
break #退出内嵌for循环,开始下一行显示
count +=1 #循环次数加一
def main(): #定义主函数
ChengFaBiao() #调用ChengFaBiao()函数
if __name__=="__main__": #调用py库
main() #执行主函数
"""
方法二
for i in range(1,10):
for j in (1,i+1):
print "%d*%d=%2d "%(i,j,i*j),
print
"""
3.索引
获取特定偏移的元素,给出一个字符串,可输出任意一个字符,如果索引位负数,就是相当与从后向前数。
可以通过切片的方式获取字符串的一部分内容,语法为:s[start:stop:step],start为索引开始的地方,stop为结束的地方,step为步长。
测试:字符串反转
#!/usr/bin python
#encoding:utf-8
#**************************************#
# Author :wang #
# Email :wang@qq.com #
# Version : #
# Create_Date:2017-12-23 22:57:44 #
# Description: #
# #
#**************************************#
print "*"*40
print " 字符串反转 "
print "*"*40
while True:
a = raw_input("请输入字符串: ")
print "反转字符串为:%s"%(a[::-1])
s = raw_input("是否继续(y/n): ")
if s == "n":break
4.字符串常用方法
【1】判断开头:s.digit(),
【2】判断结尾:s.endswith(“”)
【3】判断由什么组成:s.startswith(“”)
【4】去除字符串左右的空格(主要用于在用户有输入的地方):s.strip(),s.lstrip(),s.rstrip()
【5】字符串格式化对齐:左对齐,右对齐,中间对齐:s.ljust(40,”*”),s.rjust(40,”*”),s.center(40,””)
注:括号第一项数字位字符串占用长度,第二项位字符串填充字符。
【6】字符串指定字符替换:s.replace(需要转换的字符,转换后的字符)
【7】字符串分片:s.split(“以什么为界进行分割”)
【8】枚举:enumerate(s)该函数返回字符串各字符的值和索引
5.元组(带了紧箍咒的列表)
【1】元组的创建
通过赋值方式创建元组:t = (1, 1.0, 2j, True, (1,2,3))
通过工厂方法创建元组:t = tuple()
注:定义单个元组,一定要在这个元素后面加逗号如t1 = (1,)
【2】元组的操作
索引及切片:同字符串
连接:s1+s2
重复:s1*3重复三遍
成员操作符:
allow_ips = ('172.25.254.1', '172.25.254.12', '172.25.254.13')
if "172.25.254.1" in allow_ips:
print "有访问权限"
else:
print "无访问权限"
元组嵌套时元素的访问
逆转元组元素:同字符串
【3】元组可用的内置方法
比较两个元组是否相等:
print cmp(('a', 1,2,3,4), (1, 2,))
求元组中的最大值:
print max((12,34,12,56))
求元组中的最小值:
print min((12,34,12,56))
【4】枚举
测试 自动售货系统部分代码
#!/usr/bin python
#encoding:utf-8
#**************************************#
# Author :wang #
# Email :wang@qq.com #
# Version : #
# Create_Date:2017-12-24 03:50:41 #
# Description: #
# #
#**************************************#
print "#**************************************#"
print " 商店"
print "#**************************************#"
goods = (
("apple",3),
("ipad",2),
("iwatch",12)
)
print "商品编号\t商品名称\t商品价格"
for i,v in enumerate(goods):
print "%3d\t\t%s\t\t%.2f"%(i,v[0],v[1])
【5】元组的常用方法
求元组中1出现的次数:t.count(1)
求元组t中第一次出现1时的索引:t.index(1)