python(字符串及其函数、列表list及其函数、tuple、实例---随机点名)

2024-02-28 04:20

本文主要是介绍python(字符串及其函数、列表list及其函数、tuple、实例---随机点名),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

学习目标:

Python学习四、


学习内容:

1、字符串及其函数
2、列表list及其函数
3、tuple
4、实例


1、字符串及其函数

  • 字符串:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串

字符串特性:范围内只能放一个值、不可变、从左到右并且从脚标[0]开始读取

1、字母处理:

.upper():全部大写
.lower():全部小写
.swapcase():大小写互换
.capitalize():首字母大写,其余小写
.title():首字母大写

zifu='Hello World!!!'
print(zifu.upper())
print(zifu.lower())
print(zifu.swapcase())
print(zifu.capitalize())
print(zifu.title())
输出:
HELLO WORLD!!!
hello world!!!
hELLO wORLD!!!
Hello world!!!
Hello World!!!

2、格式化相关

.ljust(width) : 获取固定长度,左对齐,右边不够用空格补齐
.rjust(width) : 获取固定长度,右对齐,左边不够用空格补齐
.center(width): 获取固定长度,中间对齐,两边不够用空格补齐
.zfill(width) : 获取固定长度,右对齐,左边不足用0补齐

a='1 2'
print(a.ljust(10))  # 获取固定长度,左对齐,右边不够用空格补齐
print(a.rjust(10))  # 获取固定长度,右对齐,左边不够用空格补齐
print(a.center(10)) # 获取固定长度,中间对齐,两边不够用空格补齐
print(a.zfill(10))  # 获取固定长度,右对齐,左边不足用0补齐
执行结果:
1 2       1 21 2    
00000001 2

3、字符串相关搜索

.find() :搜索指定字符串,没有返回-1
.index() :同上,但是找不到会报错
.rfind() :从右边开始查找
.count() :统计指定的字符串出现的次数

zifu='Hello World!!!'
print(zifu.find('o'))
print(zifu.find('w',1,2))
print(zifu.index('W'))
print(zifu.count('o'))
print(zifu.rfind('o'))
结果:
4
-1
6
2
7

4、字符串替换

.replace(‘old’,‘new’) :替换old为new
.replace(‘old’,‘new’,次数) :替换指定次数的old为new

zifu='Hello World!!!'
print(zifu.replace('H','h'))
print(zifu.replace('o','y',3))
hello World!!!
Helly Wyrld!!!

5、字符串去空格以及指定字符

.strip() :去两边空格
.lstrip() :去左边空格
.rstrip() :去右边空格
.split() :默认按空格分隔
.split(‘指定字符’) :按指定字符分割字符串为数组

zifu='   He  ll o Wo rld!!!    '
print(zifu.strip())
print(zifu.lstrip())
print(zifu.rstrip())
print(zifu.split())
print(zifu.split('l'))
He  ll o Wo rld!!!
He  ll o Wo rld!!!    He  ll o Wo rld!!!
['He', 'll', 'o', 'Wo', 'rld!!!']
['   He  ', '', ' o Wo r', 'd!!!    ']

6、字符串判断相关

.startswith(‘start’):是否以start开头
.endswith(‘end’):是否以end结尾
.isalnum():是否全为字母或数字
.isalpha():是否全字母 .isdigit():是否全数字
.islower():是否全小写 .isupper():是否全大写
.istitle():判断首字母是否为大写
.isspace():判断字符是否为空格

7、range()函数

  • range()函数:可以生成一个整数序列(其传递的值为整数)
for j in range(11):print(j)
输出:
0
1
2
3
4
5
6
7
8
9
10

8、len()函数
len函数可以计算字符串长度

x = 'runoob'
for i in range(len(x)):print(i)
print(len(x))
输出:
0
1
2
3
4
5
6

9、补充内容

’ '.join:指定字符连接序列中元素后生成的新字符串
bin():十进制数转八进制
hex():十进制数转十六进制
type():查看数据类型
format():格式化字符串,类似%s,传递值能多不能少

zifu='Hello World!!!'
for i in range(len(zifu)):print(i)
print(type(zifu))
0
1
2
3
4
5
6
7
8
9
10
11
12
13
<class 'str'>

2、列表及其函数

  • Python内置的一种数据类型是列表:list,list是一种有序的集合,可以随时添加和删除其中的元素

1、按要求列出列表集合元素的个数
len():

username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
print(len(username))
print(username[2])
输出:
7
Tracy

2、当倒数时,可以用负数来读取列表的元素

username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
print(username[-3])
输出:
Jack

3、list是一个可变的有序表,可以把元素插入到指定的位置
append()函数:

username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
username.append('Adam')
print(username)
输出:
['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny', 'Adam']

insert()函数:

username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
username.insert(2,'Alice')
print(username)
输出:
['Michael', 'Bob', 'Alice', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']

4、删除list末尾的元素用pop()方法
pop()函数:

  • 默认删除最后一个元素pop()
username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
username.pop()
print(username)
输出:
['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy']
  • 指定删除某一元素pop(i)
username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
username.pop(3)
print(username)
输出:
['Michael', 'Bob', 'Tracy', 'Jack', 'Amy', 'Anny']

5、直接根据脚标指定替换某一元素

username = ['Michael', 'Bob', 'Tracy', 'Tom', 'Jack', 'Amy', 'Anny']
username[2] = 'yang'
print(username)
输出:
['Michael', 'Bob', 'yang', 'Tom', 'Jack', 'Amy', 'Anny']

6、list列表中也可以包含另一个列表

username = ['Michael', 'Bob', ['Tracy', 'Tom', 'Jack'], 'Amy', 'Anny']
print(len(username))
输出:
5
  • 当想输出Jack时可以
username = ['Michael', 'Bob', ['Tracy', 'Tom', 'Jack'], 'Amy', 'Anny']
print(s[2][2])
输出:
Jack

3、tuple

  • 另一种有序列表叫元组:tuple列表及其函数,tuple和list非常类似
  • tuple一旦初始化就不能修改
    1、tuple值得注意的是
  • 当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来
  • 定义一个空的tuple,可以写成()
t = ()
print(t)

只有1个元素的tuple定义时必须加一个逗号,(以免你误解成数学计算意义上的括号)

t = (1,)
print(t)
(1,)

2、tuple中的元素不可变,但是元素的元素可变

tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向’a’,就不能改成指向’b’,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的

在这里插入图片描述


4、实例:

1、随机输出名字进行点名

#第一种方法
input_num = int(input('请输入'))
lists = ['王大毛','王二毛','王三毛','王四毛','王五毛']
for i in range(input_num):num = random.randrange(len(lists))print(lists.pop(num))
#第二个方法
lists = ['王大毛','王二毛','王三毛','王四毛','王五毛']
li = []
n = 0
while True:input_num = int(input('请输入'))username = lists[random.randrange(len(lists))]if username in li:passelse:li.append(username)n = n+1print(username)if n == input_num:break
#第三个方法
import random
num = int(input('请输入:'))
n_set = set([])
l_set = lists = ['王大毛','王二毛','王三毛','王四毛','王五毛']
while True:c = random.choice(l_set)n_set.add(c)if len(n_set)==num:for i in n_set:print(i)break
#随机不重复选取元素
import random
a = [1,2,3,4,5,6]
c = []
while True:b = random.choice(a)if b not in c:c.append(b)elif len(c)==3:break
print(c)

2、按要求对下列字符串进行实验:
s = ‘aasadaDSFSDFsfdsf’

  • 进行字符串颠倒
s = 'aasadaDSFSDFsfdsf'
s = [x for x in s]
print(s)
for i in range(len(s)//2):a = s[i]b = s[-(i+1)]s[i] = bs[-(i + 1)] = a
s = ''.join(s)
print(s)
输出:
['a', 'a', 's', 'a', 'd', 'a', 'D', 'S', 'F', 'S', 'D', 'F', 's', 'f', 'd', 's', 'f']
fsdfsFDSFSDadasaa
  • 分别进行遍历
s = 'aasadaDSFSDFsfdsf'
for i in range(-1,-18,-1):
print(s[i])
输出:
f
s
d
f
s
F
D
S
F
S
D
a
d
a
s
a
a

这篇关于python(字符串及其函数、列表list及其函数、tuple、实例---随机点名)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/754397

相关文章

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

nudepy,一个有趣的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个有趣的 Python 库 - nudepy。 Github地址:https://github.com/hhatto/nude.py 在图像处理和计算机视觉应用中,检测图像中的不适当内容(例如裸露图像)是一个重要的任务。nudepy 是一个基于 Python 的库,专门用于检测图像中的不适当内容。该

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

c++的初始化列表与const成员

初始化列表与const成员 const成员 使用const修饰的类、结构、联合的成员变量,在类对象创建完成前一定要初始化。 不能在构造函数中初始化const成员,因为执行构造函数时,类对象已经创建完成,只有类对象创建完成才能调用成员函数,构造函数虽然特殊但也是成员函数。 在定义const成员时进行初始化,该语法只有在C11语法标准下才支持。 初始化列表 在构造函数小括号后面,主要用于给

C++操作符重载实例(独立函数)

C++操作符重载实例,我们把坐标值CVector的加法进行重载,计算c3=c1+c2时,也就是计算x3=x1+x2,y3=y1+y2,今天我们以独立函数的方式重载操作符+(加号),以下是C++代码: c1802.cpp源代码: D:\YcjWork\CppTour>vim c1802.cpp #include <iostream>using namespace std;/*** 以独立函数