一、Python字符串练习

1.http://news.gzcc.cn/html/2017/xiaoyuanxinwen_1027/8443.html

取得校园新闻的编号.

(这个方法就很多了,一般方法二和方法三用得比较多一点)

# 定义字符串
s = "http://news.gzcc.cn/html/2017/xiaoyuanxinwen_1027/8443.html"
# 方法一 直接获取
print(s[-14:-5])
#方法二 利用rstrip
ss = s.rstrip(".html")[-9:]
print(ss)
#方法三 利用rstrip和split
sss = s.rstrip(".html").split("_")
print(sss[1])

2.https://docs.python.org/3/library/turtle.html

产生python文档的网址。

(这个数组可以通过加法进行结合)

# 数组一
add1 = "https://docs.python.org/3/library/turtle"
#数组二
add2 = ".html"
s = add1 + add2
print(s)

3.http://news.gzcc.cn/html/xiaoyuanxinwen/4.html

产生校园新闻的一系列新闻页网址。

(一系列的新闻信息,一般仅仅会变化数字,那么这就是我们可以通过for循环进行爬数据出来,format比较常用)

#定义一个变量i
i=1
#通过for循环,还有常用的format进行输出
for i in range(6):
print("http://news.gzcc.cn/html/xiaoyuanxinwen/{}.html".format(i))

4.练习字符串内建函数:strip,lstrip,rstrip,split,count

"  http://news.gzcc.cn/html/xiaoyuanxinwen/4.html"

(先定义一个字符串s)

s = "  http://news.gzcc.cn/html/xiaoyuanxinwen/4.html"

A.删去前空格

ss = s.strip(" ")

B.删去http://前缀

ssl = ss.lstrip("http://")

C.删去后缀“.html”并且输出数字

ssr = ss.rstrip(".html")[-1:]

D.显示出这一段有多少个n

sscount = s.count("n")

 E.将以“/”分隔成多个单词

ssp = s.split("/")

 最后通过print输出就可以看到结果啦!

print(ss)
print(ssl)
print(ssr)
print(ssp)
print(sscount)

二、组合数据类型练习

1.分别定义字符串,列表,元组,字典,集合,并进行遍历。

A.定义字符串

s = "Hello World !"
print(s)

B.定义列表

s = ["aaa","bbb",[1,2,3]]
for i in s :
print(i)

C.定义元祖

#定义一个列表
s = ["aaa","bbb",[1,2,3]]
#定义元祖
tup = tuple(s)
#遍历元祖
for i in tup :
print(i)
#由下面可知,元祖里面的儿子如果是列表,则列表里面可以修改,否则元祖是无法修改的
tup[-1][1] = 0
for i in tup :
print(i)
tup[0][0] = "aaa"
for i in tup :
print(i)

D.定义字典

#生成字典
dird = {'Micheal':23,'Marry':22,'Jany':43}
#获取键“Micheal”值对,应该是23
print(dird["Micheal"])

E.定义集合

s1 = {1,3,5,7,9}
s2 = {1,2,3,5}
#获取s1、s2的相同部分
s = s1&s2
print(s)

  

2.总结列表,元组,字典,集合的联系与区别。

A.列表的特点是用方括号,列表内的值可以进行修改,可以用于一些需要经常改变的数值;

B.元祖的特点是用园括号内部的值是无法进行修改的,所以可以用于一些无法进行修改的数值,但是如果元祖内部有列表的子序列,那么列表内就可以 进行修改;

C.字典的特点是用大括号,但是对于列表和元祖的特点是键值对(key—value),但是不同于它们的是,key值是不能够修改的,所以对于一些用户名或者不可更改的值,可以用这个类型,密码可以随时修改,即value值。

D.集合也就是一组key的集合,但是不存储value,统同样和字典一样用大括号进行表示。

那么今天的字符串练习就到此结束了。

Python字符串、组合数据类型练习的更多相关文章

  1. python的组合数据类型及其内置方法说明

    python中,数据结构是通过某种方式(例如对元素进行编号),组织在一起数据结构的集合. python常用的组合数据类型有:序列类型,集合类型和映射类型 在序列类型中,又可以分为列表和元组,字符串也属 ...

  2. Python的组合数据类型

    """ Python的组合类型: 序列类型:元素之间存在先后关系,可以通过索引来访问 列表: 元组: 字符串: 映射类型:用键值来表示数据 字典: 集合类型:元素是无序的 ...

  3. 【Python】组合数据类型

    集合类型 集合类型定义 集合是多个元素的无序组合 集合类型与数学中的集合概念一致 集合元素之间无序,每个元素唯一,不存在相同元素 集合元素不可更改,不能是可变数据类型 理解:因为集合类型不重复,所以不 ...

  4. python字符串列表元组序列操作

    Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列通用操作 访问单个元素 切片访问一部分元素 序列的复 ...

  5. 第一节 Python基础之数据类型(整型,布尔值,字符串)

    数据类型是每一种语言的基础,就比如说一支笔,它的墨有可能是红色,有可能是黑色,也有可能是黄色等等,这不同的颜色就会被人用在不同的场景.Python中的数据类型也是一样,比如说我们要描述一个人的年龄:小 ...

  6. Python Revisited Day 03 (组合数据类型)

    目录 第三章 组合数据类型 3.1 序列类型 3.1.1 元组 3.1.2 命名的元组 (collections.nametuple()) 3.1.3 列表 (查询有关函数点这) 3.1.4 列表内涵 ...

  7. Python学习笔记(六)Python组合数据类型

    在之前我们学会了数字类型,包括整数类型.浮点类型和复数类型,这些类型仅能表示一个数据,这种表示单一数据的类型称为基本数据类型.然而,实际计算中却存在大量同时处理多个数据的情况,这种需要将多个数据有效组 ...

  8. python组合数据类型和数据结构

    //2019.12-071.pyhton里面组合数据类型主要有三种:集合(set).序列(字符串str.列表list and 元组tuple)和映射(字典dic)2.集合类型一般使用大括号{}来进行表 ...

  9. Python基础篇(四)_组合数据类型的基本概念

    Python基础篇——组合数据类型的基本概念 集合类型:元素的集合,元素之间无序 序列类型:是一个元素向量,元素之间存在先后关系,通过序号进行访问,没有排他性,具体包括字符串类型.元组类型.列表类型 ...

随机推荐

  1. [转]Nginx配置信息详解

    序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也 ...

  2. 理解MyCat分库分表

    1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.

  3. Qt编写自定义控件14-环形进度条

    前言 环形进度条,用来展示当前进度,为了满足大屏UI的需要特意定制,以前有个叫圆环进度条,不能满足项目需要,只能重新定做,以前的进度间距不能自适应分辨率,而且当前进度对应的反的进度不能单独设置颜色,即 ...

  4. GlusterFS集群

    使用架构: 2台机器安装 GlusterFS 组成一个 Distributed Replicated Volumes集群 192.168.0.92 服务端 192.168.0.93 服务端 192.1 ...

  5. Mybatis Guide

    每个基于MyBatis的应用都是以一个SqlSessionFactory的实例为中心的.SqlSessionFactory的实例可以通过SqlSessionFactoryBuilder获得.而SqlS ...

  6. maven-1-是什么

    背景 1.1. 场景 假如你正在Eclipse下开发两个Java项目,姑且把它们称为A.B,其中A项目中的一些功能依赖于B项目中的某些类,那么如何维系这种依赖关系的呢? 很简单,这不就是跟我们之前写程 ...

  7. Android OKHttp 可能你从来没用过的拦截器 【实用推荐】

    前言 在平时开发中,你有没有下面这样的困扰呢? 场景一 明明是服务端的接口数据错误,而QA(测试)第一个找到的可能是客户端开发的你,为什么这个页面出现错误了? 而作为客户端开发的你,可能要拿出测试机连 ...

  8. TypeError: __init__() got an unexpected keyword argument 'serialized_options'

    问题描述: TypeError: __init__() got an unexpected keyword argument 'serialized_options' File "objec ...

  9. vue加scoped后无法修改样式(无法修改element UI 样式)

    有的时候element提供的默认的样式不能满足项目的需要,就需要我们队标签的样式进行修改,但是发现修改的样式不起作用 第一种方法 原因:scoped 解决方法:去掉scoped 注意:此时该样式会污染 ...

  10. Docker踩坑小记

    Docker是一个开放平台用于快速开发.分发和部署应用程序.   Docker是一种容器管理技术.   解决头疼问题原则:回归最简单的方式来.确保最初级的方案没有错误. 安装 docker安装很简单, ...