python 字符串函数的练习

# -*- coding:utf-8 -*-

string = '<div class="item-list ni-list"><ul><li  class="first"><a href="http://www.tepintehui.com/detail/57185?ce" title="明星同款| 钟基欧巴穿的小脏鞋5折辣!" ><span>明星同款| 钟基欧巴穿的小脏鞋5折辣!</span></a></li><li><a href="http://www.tepintehui.com/detail/56847?ce" title="装逼| 你们见过凌晨四点钟的洛杉矶吗?" ><span>装逼| 你们见过凌晨四点钟的洛杉矶吗?</span></a></li><li  ><a href="http://www.tepintehui.com/detail/57127?ce" title="反人类| 世界上最干净的纸竟然是黄色的!" ><span>反人类| 世界上最干净的纸竟然是黄色的</span></a></li><li><a href="http://www.tepintehui.com/detail/57120?ce" title="科普| 吃了避孕药之后怀的孩子能要吗?" ><span>科普| 吃了避孕药之后怀的孩子能要吗?</span></a></li><li><a href="http://www.tepintehui.com/detail/57125?ce" title="真假| 9年义务升为12年制,是要取消高考吗" ><span>真假| 9年义务升为12年制,是要取消高考吗</span></a></li><li><a href="http://www.tepintehui.com/detail/57124?ce" title="土豪| 揭秘迪士尼见不得光的33号俱乐部" ><span>土豪| 揭秘迪士尼见不得光的33号俱乐部</span></a></li><li  ><a href="http://www.tepintehui.com/detail/41008?ce" title="吐槽| 男人单身太久会没感觉?" ><span>吐槽| 男人单身太久会没感觉?</span></a></li><li  ><a href="http://www.tepintehui.com/detail/23488?ce" title="冷知识| 为什么镜子是左右颠倒不是上下呢" ><span>冷知识| 为什么镜子是左右颠倒不是上下呢</span></a></li><li  ><a href="http://www.tepintehui.com/detail/37213?ce" title="新玩法| 这年头情侣之间种草莓已经out了!" ><span>新玩法| 这年头情侣之间种草莓已经out了!</span></a></li><li  ><a href="http://www.tepintehui.com/detail/11411?ce" title="四壁| 老美说凤姐把范冰冰秒成渣,你怎么看" ><span>四壁| 老美说凤姐把范冰冰秒成渣,你怎么看</span></a></li><li  ><a href="http://www.tepintehui.com/detail/37456?ce" title="凭什么| 个人挖墓是盗墓,国家挖是考古?" ><span>凭什么| 个人挖墓是盗墓,国家挖是考古?</span></a></li><li  ><a href="http://www.tepintehui.com/detail/40706?ce" title="福利| 要知道加这个群这么爽!我早进了" ><span>福利| 要知道加这个群这么爽!我早进了</span></a></li></ul></div>'

# 定义两个变量:分别表示开始的字符串,结束的字符串
start_string = 'http'
end_string = '?ce'

# 先找第一个开始位置,如果没有找到,返回的是-1
start = string.find(start_string)
# 只要start不等于-1,说明找到了http
while start != -1:

    # 找结束的位置
    end = string.find(end_string,start)

    # 截取字符串 结束位置 = 结束字符串的开始位置+结束字符串的长度
    sub_str = string[start:end+len(end_string)]
    print (sub_str)
    # 找下一个开始的位置
    # 如果没有找到下一个开始的位置,相当于写了一句start=-1,while循环的条件不成立,结束循环
    start = string.find(start_string,end)





'''
# 使用find函数查找开始截取的位置
start = string.find('http')
print (start)
# 找到结束截取的位置
end = string.find('?ce')
print (end)
# 找到第一个
sub_str = string[start:end+len('?ce')]
print (sub_str)

# 找第二个开始位置
sec_start = string.find('http',end)
print (sec_start)

# 找到第二个结束位置
sec_end = string.find('?ce',sec_start)
print (sec_end)

# 截取第二个字符串
sec_str = string[sec_start:sec_end+len('?ce')]
print (sec_str)

'''








'''

练习1:
从上面的字符串中,将所有a标签的href值取出来,输出样式为:
http://www.tepintehui.com/detail/40706?ce
http://www.tepintehui.com/detail/40706?ce
http://www.tepintehui.com/detail/40706?ce
http://www.tepintehui.com/detail/40706?ce
http://www.tepintehui.com/detail/40706?ce
http://www.tepintehui.com/detail/40706?ce
'''


# 练习2:
# 模拟手机通讯录搜索功能
name_list = ['zhangsan','zhangsanfeng','zhaoliu','wangwu','wulong','wanda','lisi','liuyang','luoxiaoxiao','linmeimei','luhan','gaohairui','guojing','huangrong','hanhan']

# {'z':['zhansgan','zhangsanfeng','zhaoliu'],'l':['lisi','liuyang','luoxiaoxiao'。。。。。。]}


# 声明空字典
result_dict = {}
# fou循环遍历列表,取出每一个姓名
for name in name_list:
    # 取出首字母
    first_char = name[0]
    # 判断字典中是否有first_char这个key
    if first_char in result_dict.keys():
        # 字典中有这个key
        # 根据key取出列表,将这个name添加到列表中
        list1 = result_dict[first_char]
        list1.append(name)
    else:
        # 没有first_char这个key
        # 根据这个key将存放name的列表放入字典中
        result_dict[first_char] = [name]

while True:
    # s就是要查找的key
    s = input("请输入要查找的联系人姓氏首字符:")
    if s in result_dict.keys():
        # 根据s这个key取出字典中对应的值(列表)
        list1 = result_dict[s]
        for index,name in enumerate(list1):
            print ('序号: {} 姓名: {}'.format(index,name))
    else:
        print ('没有查询到结果')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值