【 Python 全栈开发 - 语法基础篇 - 10 】Python 基本数据类型 —— 列表


一、基本数据类型

Python 中一共有6种基本数据类型,他们是:

  1. Number(数字)
  2. String(字符串)
  3. List(列表)
  4. Tuple(元组)
  5. Set(集合)
  6. Dictionary(字典)

在这6个基本数据类型中,不可变数据 有3个:

  • Number(数字)
  • String(字符串)
  • Tuple(元组)

可变数据 有3个:

  • List(列表)
  • Set(集合)
  • Dictionary(字典)

各个数据可以使用特定的语句来进行转换,如int()、str()、float()、set()等。

本期内容我们详细介绍String(字符串)这一类型。


二、String(字符串)

整数(string),简写为str

Python中字符串使用 ' '(单引号)、 " "(双引号)或''' '''(三引号)包裹起来,比如 “str”,‘str’ 等。

以下这些都是字符串类型。

a = 'Python'
b = "100"
c = '''关注作者'''

注:

  1. 不管引号是单引号、双引号还是三引号,它都是字符串;
  2. 不管引号内是英文、中文还是数字,它都是字符串;

(1)字符串拼接

在 Python 中,多个字符串进行拼接,直接使用操作符+即可。

如下所示。

a = 'Pyth'
b = 'on'
print(a+b)

程序运行结果

Python

小试牛刀

题目:运行以下程序,将输出_____。

a = 1
b = 2
c = '1'
d = '2'
print(a+b)
print(c+d)

正确答案

3
12   # 这里输出的`12`其实是字符串类型,只是输出时会将引号省略

解析:程序一共有两个print()语句,意味着将输出两个结果;变量a、b为数字中的整数类型,使用操作符+会进行加法运算“1+2”,输出结果3;而变量c、d为字符串类型,使用操作符+会进行字符串拼接,输出结果'12'

总结

  1. 操作符+在数字与数字之间时,进行加法运算;在字符串与字符串之间时,进行字符串拼接(在字符串与数字之间时,会报错);
  2. Python 使用 print()语句进行输出时,字符串会以省略引号的形式输出。

(2)字符串复制

关于字符串的复制操作,我们使用*操作符。

如下

a = 'a'
print(a*5)

程序输出

aaaaa

这种操作还是蛮简单的,需注意的是,对字符串进行*操作会进行字符串的复制,而对数字进行*操作,会进行乘法运算。

小试牛刀

题目:编写程序,输出20个“-”。
正确答案

print('-'*20)

解析:通过操作符*实现字符串的复制。

(3)字符串截取

字符串截取是一个重要的知识点,字符串的截取的语法格式如下:

字符串[头下标:尾下标]

索引值以 0 为开始值,-1 为从末尾的开始位置。

在这里插入图片描述

实例如下:

string = 'Python'

# 输出字符串
print('输出字符串:', string)
# 输出第一个字符
print('输出第一个字符:', string[0])
# 输出第一个到倒数第二个的所有字符
print('输出第一个到倒数第二个的所有字符:', string[0:-1])
# 输出从第三个开始的后的所有字符
print('输出从第三个开始的后的所有字符:', string[2:])
# 输出从第三个前面的所有字符
print('输出从第三个前面的所有字符:', string[:2])

以上运行结果:

输出字符串: Python
输出第一个字符: P
输出第一个到倒数第二个的所有字符: Pytho
输出从第三个开始的后的所有字符: thon
输出从第三个前面的所有字符: Py

我们把通过具体某一个位置获取该位置的值的方式称为普通索引
通过某一位置区间获取该位置区间内的值的方式称为切片索引

小试牛刀

题目:编写程序,输出字符串“python”的每一个字母(运用字符串索引)。
正确答案

string = 'python'
for i in range(6):
	print(string[i])

解析:通过range()循环6次,每次提取字符串索引。

拓展:更便捷的方法(不运用字符串索引,运用for循环遍历字符串)。

string = 'python'
for i in string:
	print(i)

(4)字符串转义

Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

print('Py\nthon')  # 转义字符“\n”表示换行
>>> Py
thon
print(r'Py\nthon')
>>> Py\nthon

注意:

  1. 反斜杠\可以用来转义,使用r可以让反斜杠不发生转义。
  2. 字符串可以用+运算符连接在一起,用*运算符重复。
  3. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
  4. Python中的字符串不能改变。

小试牛刀

题目:编写程序,输出以下结果。

1
-
1
-
1
-

正确答案

for i in range(3):
	print('1\n-')

解析:通过for循环range3次,每次输出字符串(运用转义字符\n进行换行)。

(5)获取字符串长度

使用len()指令可以获取字符串的长度(len()指令同样适用于获取列表、元组、字典等数据类型的长度)。

string = 'python'
print(len(string))

程序输出

6

小试牛刀

题目:编写程序,输出字符串“python is a code language”的长度。
正确答案

string = 'python is a code language'
print(len(string))

输出:

25

解析:通过len()指令来获取字符串的长度。

(6)查找字符串

查找字符串有两种方法,第一种方法是使用find()指令,第二种方法是使用innot in

方法一:find()

find()指令会查找字符串内的另一个字符串,并返回对应的索引(不存在则返回-1

示例一:

print('python'.find('t'))

程序输出

2

示例二:

print('python'.find('a'))

程序输出

-1

方法二:in 与 not in

in查找:返回True(真)表示在字符串内,返回False(假)表示不在字符串内。
not in查找:返回True(真)表示不在字符串内,返回False(假)表示在字符串内。

print('p' in 'python')
print('a' in 'python')
print('p' not in 'python')
print('a' not in 'python')

程序输出

True
False
False
True

小试牛刀

题目:编写程序,如果字符串“e”在“hello”内,则输出1,否则输出2。
正确答案

if 'e' in hello:
	print(1)
else:
	print(2)

输出:

1

解析:用in语句判断是否在字符串内。

(7)字符串分隔

字符串分隔使用split()命令,使用此命令将返回一个列表。

string = '1,2,3,4,5'
print(string.split(' '))

程序输出

['1', '2', '3', '4', 5]

小试牛刀

题目:运行以下程序,将输出( ):

string = 'python is a code language'
a = string.split(' ')
print(a[0])
  • A.python is a code language
  • B.python
  • C.code
  • D.程序报错

正确答案:B
解析split()指令分隔字符串,将字符串按照括号内的内容进行分隔(即空格 ' ')并赋值到变量a中,此时变量a的值是一个列表( [‘python’, ‘is’, ‘a’, ‘code’, ‘language’] ),最后输出了变量a索引0(索引为0,就是第一项),也就是'python'
拓展:列表的索引与字符串一样,只不过返回的是列表的各个项。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python是一门开源的高级编程语言,具有易上手、语法简单、代码可读性高等优点,它已被广泛应用于数据分析、机器学习、Web开发、自动化测试、网络爬虫等领域。特别是在Web开发领域,Python的市场份额与日俱增。 “Python3.5工程师零基础到项目实战套”是一份针对想要系统学习Python、掌握Web开发、了解整个开发流程、掌握实战技能的人群所设计的教程。本套课程分为基础篇、Web开发篇、实战篇,共计30个小时的视频教程和配套的源代码、PPT、实战项目。 基础篇讲解了Python基本语法数据类型、函数、模块、面向对象等内容,让初学者快速入门、掌握基本技能;Web开发篇主要讲解了使用Python进行Web开发的相关技术,包括Django、Flask等框架和前端技术,包括HTML、CSS、JavaScript等内容;实战篇则涵盖了实战项目的设计思路、开发流程、调试技巧等,学习者可以通过案例的形式深入了解应用技能,例如电商网站、聊天室、博客等项目。 本套课程适合零基础的初学者,甚至是有一定编程经验的人,希望通过Python工程师的路径掌握Web开发相关技术,掌握实际工作中所需要的技能。此外,本套课程针对Python3.5版本进行讲解,与当前主流版本的Python3.x兼容性良好,可以直接应用于生产环境。 总而言之,如果你想成为一名Python工程师,想要系统地学习Python、Web开发、实战技能,那么“Python3.5工程师零基础到项目实战套”是非常值得一看的教程!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值