当前位置: 首页 > news >正文

python数据结构和字符串用法

python数据结构和字符串用法

#Python 中数学运算常用的函数基本都在 math 模块
import math
print(math.ceil(4.1)) #5
print(math.floor(4.9)) #4
print(math.fabs(-10)) #10.0
print(math.sqrt(9)) #3.0
print(math.exp(1)) #2.718281828459045

#Python随机数
#使用random()方法即可随机生成一个[0,1)范围内的实数
import random
ran=random.random()
print(ran)

#randint()生成一个随机整数
ran=random.randint(1,20)
print(ran)

#字符串
#字符串连接:+
a="Hello "
b="World "
print(a+b)

#重复输出字符串:*
print(a*3)

#通过索引获取字符串中字符[]
print(a[0]) #H

#字符串截取[:] 牢记:左闭右开
print(a[1:4]) #ell

#判断字符串中是否包含给定的字符: in, not in
print(‘e’ in a) #True
print(‘e’ not in a) #False

#join():以字符作为分隔符,将字符串中所有的元素合并为一个新的字符串
new_str=‘-’.join(‘Hello’)
print(new_str)

#字符串单引号、双引号、三引号
print(‘Hello World!’)
print(“Hello World!”)

#转义字符
print(“The \t is a tab”)
print(‘I’m going to the movies’)

#引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。
print(‘’‘I’m going to the movies’‘’)

html = ‘’’

Friends CGI Demo

ERROR

%s

''' print(html)

#声明一个列表,并通过下标或索引获取元素
names=[‘jack’,‘tom’,‘tonney’,‘superman’,‘jay’]
#通过下标或索引获取元素
print(names[0])
print(names[1])

##获取最后一个元素
print(names[-1])
print(names[len(names)-1])
#获取第一个元素
print(names[-5])

#遍历列表,获取元素
for name in names:
print(name)

#查询names里面有没有superman
for name in names:
if name==‘superman’:
print(‘有超人’)
break
else:
print(‘无超人’)

#更简单的方法,来查询names里有没有superman
if ‘superman’ in names:
print(‘有超人’)
else:
print(‘无超人’)

#列表元素添加
#声明一个空列表
girls=[]
girls.append(‘small tom’)
print(girls)

#extend(),一次添加多个。把一个列表添加到另一个列表 ,列表合并。
models=[‘big sister’,‘middle sister’]
girls.extend(models)
#girls=girls+models OK
print(girls)

#insert():指定位置添加
girls.insert(1,‘书欣’)
print(girls)

#列表元素修改,通过下标找到元素,然后用=赋值
fruits=[‘apple’,‘pear’,‘banana’,‘pineapple’,‘caomei’]
print(fruits)

fruits[-1]=‘strawberry’
print(fruits)

#将fruits列表中的‘banana’替换为’香蕉’

no modify

for fruit in fruits:
if ‘banana’ in fruit:
fruit=‘香蕉’
print(fruits)

#OK update banana->香蕉
for i in range(len(fruits)):
if ‘banana’ in fruits[i]:
fruits[i]=‘香蕉’
break
print(fruits)

#列表元素删除
words=[‘cat’,‘hello’,‘pen’,‘pencil’,‘ruler’]
del words[0]
print(words)

words.remove(‘pen’)
print(words)

words.pop(0)
print(words)

#列表切片
#在Python中处理列表的部分元素,称之为切片。
#创建切片,可指定要使用的第一个元素和最后一个元素的索引。注意:左闭右开
#将截取的结果再次存放在一个列表中,所以还是返回列表
animals = [‘cat’,‘dog’,‘tiger’,‘snake’,‘mouse’,‘bird’]
print(animals[2:5]) #[‘tiger’, ‘snake’, ‘mouse’]
print(animals[-1:]) #[‘bird’]
print(animals[-3:-1]) #[‘snake’, ‘mouse’]
print(animals[-5👎2]) #[‘dog’, ‘snake’]
print(animals[::2]) #[‘cat’, ‘tiger’, ‘mouse’]

#列表排序
import random
random_list=[]
for i in range(10):
ran=random.randint(1,20)
if(ran not in random_list):
random_list.append(ran)
print(random_list) #少项数<10 [11, 5, 9, 1, 10, 20, 12, 2]

random_list=[]
i=0
while i<10:
ran=random.randint(1,20)
if(ran not in random_list):
random_list.append(ran)
i+=1
print(random_list) #[8, 11, 2, 10, 6, 19, 16, 3, 17, 7]

#默认升序 排序
new_list=sorted(random_list)
print(new_list)

#降序 排序
new_list=sorted(random_list,reverse=True)
print(new_list)

#元组 与列表类似,元组中的内容不可修改
tuple1=()
print(type(tuple1)) #<class ‘tuple’>

tuple2=(‘hello’)
print(type(tuple2)) #<class ‘str’>

#注意:元组中只有一个元素时,需要在后面加逗号!
tuple3=(‘hello’,)
print(type(tuple3))

#元组不能修改,所以不存在往元组里加入元素。
#那作为容器的元组,如何存放元素?
random_list = []
for i in range(10):
ran = random.randint(1,20)
random_list.append(ran)
print(random_list)

random_tuple = tuple(random_list)
print(random_tuple)

#元组访问
print(random_tuple[0])
print(random_tuple[-1])
print(random_tuple[1:-3])
print(random_tuple[::-1])

#元组的修改:
t1=(1,2,3)+(4,5)
print(t1) #(1, 2, 3, 4, 5)

t2=(1,2)*2
print(t2) #(1, 2, 1, 2)

#元组的一些函数:
print(max(random_tuple))
print(min(random_tuple))
print(sum(random_tuple))
print(len(random_tuple))

#字典
#定义一个空字典
dict1={}
dict2={‘name’:‘tom’,‘weight’:45,‘age’:25}
print(dict2[‘name’])

#list可以转成字典,但前提是列表中元素都要成对出现
dict3 = dict([(‘name’,‘杨超越’),(‘weight’,45)])
print(dict3)

dict4 = {}
dict4[‘name’] = ‘虞书欣’
dict4[‘weight’] = 43
print(dict4)

dict4[‘weight’] = 44
print(dict4)

#字典里的函数 items() keys() values()
dict5 = {‘杨超越’:165,‘虞书欣’:166,‘上官喜爱’:164}
print(dict5.items())
for key,value in dict5.items():
if value > 165:
print(key)

#values() 取出字典中所有的值,保存到列表中
results = dict5.values()
print(results)

#求小姐姐的平均身高
heights = dict5.values()
print(heights)
total = sum(heights)
avg = total/len(heights)
print(avg)

names = dict5.keys()
print(names)

#字典获取用法
#print(dict5[‘赵小棠’]) #若不存在“赵小棠”,会报错KeyError
print(dict5.get(‘赵小棠’))
print(dict5.get(‘赵小棠’,170)) #如果能够取到值,则返回字典中的值,否则返回默认值170

#字典删除用法
dict6 = {‘杨超越’:165,‘虞书欣’:166,‘上官喜爱’:164}
del dict6[‘杨超越’]
print(dict6)

result = dict6.pop(‘虞书欣’)
print(result)
print(dict6)
#—the—end—字符串

相关文章:

python数据结构和字符串用法

python数据结构和字符串用法 #Python 中数学运算常用的函数基本都在 math 模块 import math print(math.ceil(4.1)) #5 print(math.floor(4.9)) #4 print(math.fabs(-10)) #10.0 print(math.sqrt(9)) #3.0 print(math.exp(1)) #2.718281828459045 #Python随机数 #使用random(…...

ext4 - mballoc块分配机制

概述 ext4为了尽量避免block管理的碎片化有如此措施&#xff1a; 1.mballoc多块分配器。 buddy算法管理每个block group采用prellocation机制&#xff0c;氛围per-cpu local preallocation和per inode preallocation 小文件和大文件采用不同的策略小文件&#xff08;具体怎么…...

Spring整合junit

1、导入pom坐标 <dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>org.springframework</gro…...

Swift 让ScrollView滚动到具体某个位置

1. 使用scrollToItem方法滚动集合视图 DispatchQueue.main.asyncAfter(deadline: .now() 0.1) {let firstIndexPath IndexPath(item: 0, section: 0)let lastIndexPath IndexPath(item: self.recordArray.count - 1, section: 0)// Scroll to first itemself.collectionVie…...

【C语言day08】

int n5; int a[n][n2] 数组定义下角标不能为变量 注&#xff1a;C99标准中支持了使用变量本题考查的是二维数组的元素访问&#xff0c;A选项是 正确的&#xff0c;X[i]就是第i行的数组名&#xff0c;数组名表示首元素的地址&#xff0c;X[i]表示第i行的第一个元素的地址&#…...

【并发编程】ThreadLocal

从名字我们就可以看到 ThreadLocal 叫做线程变量&#xff0c;意思是 ThreadLocal 中填充的变量属于当前线程&#xff0c;该变量对其他线程而言是隔离的。 ThreadLocal 为变量在每个线程中都创建了一个副本&#xff0c;那么每个线程可以访问自己内部的副本变量。 static ThreadL…...

如何提高自己的软件测试水平之bug定位

同学们在面试投简历的时候会经常看到人家公司JD上写的要求之一&#xff0c;如下&#xff1a; 这句话大家不要以为随便写写的&#xff0c;在我工作的十几年过程中起码见过10个以上试用期没过的公司新人&#xff0c;公司在衡量一个测试工程师是否专业的标准之一就是&#xff1a;…...

发点实用的快捷键(mac

切换输入法&#xff1a;ctrlspace /ctrloptionspace&#xff08;更快捷 切换网页&#xff1a; shifttab 切换应用界面&#xff1a;alttab 关闭页面&#xff1a;altw 搜索&#xff1a;altspace 展示mac隐藏文件&#xff1a; Commangshift . (点) 以下是一些浏览器快捷键&am…...

Android播放多媒体文件——播放音频

以下内容摘自郭霖《第一行代码》第三版 播放音频 MediaPlayer类中常用的控制方法 方法名功能描述setDataSource()设置要播放的音频文件的位置prepare()在开始播放之前调用&#xff0c;以完成准备工作start()开始或继续播放音频pause()暂停播放音频reset()将MediaPlayer对象重…...

存储重启后,ceph挂载信息没了,手动定位osd序号并挂载到对应磁盘操作流程、ceph查看不到osd信息处理方法

文章目录 故障说明处理流程定位硬盘中的osd序号挂载osd到ceph上验证并拉起osd重复上面操作故障说明 我们的一个存储节点莫名其妙的重启了,不知道咋回事 但这样的问题就是,所有osd都down了 因为挂载信息没有写到fstab里面,所以不会自动up,并且没有挂载信息,并且也看不到o…...

Linux学习之循环处理位置参数

for处理位置参数 loopPositionFor.sh里边的内容如下&#xff1a; #!/bin/bash# show learningfor inputString in $* doif [ "${inputString}" "good" ];thenecho "learning"fi donechmod urx loopPositionFor.sh给当前用户把loopPositionFor…...

NLP实战8:图解 Transformer笔记

目录 1.Transformer宏观结构 2.Transformer结构细节 2.1输入 2.2编码部分 2.3解码部分 2.4多头注意力机制 2.5线性层和softmax 2.6 损失函数 3.参考代码 &#x1f368; 本文为[&#x1f517;365天深度学习训练营]内部限免文章&#xff08;版权归 *K同学啊* 所有&#…...

Pytorch个人学习记录总结 玩俄罗斯方块の深度学习小项目

目录 前言 模型成果演示 训练过程演示 代码实现 deep_network tetris test train 前言 当今&#xff0c;深度学习在各个领域展现出了惊人的应用潜力&#xff0c;而游戏开发领域也不例外。俄罗斯方块作为经典的益智游戏&#xff0c;一直以来深受玩家喜爱。在这个项目中&…...

PuTTY连接服务器报错Connection refused

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…...

11-3_Qt 5.9 C++开发指南_QSqlQuery的使用(QSqlQuery 是能执行任意 SQL 语句的类)

文章目录 1. QSqlQuery基本用法2. QSqlQueryModel和QSqlQuery联合使用2.1 可视化UI设计框架2.1.1主窗口的可视化UI设计框架2.1.2 对话框的可视化UI设计框架 2.2 数据表显示2.3 编辑记录对话框2.4 编辑记录2.5 插入记录2.6 删除记录2.7 记录遍历2.8 程序框架及源码2.8.1 程序整体…...

神码ai火车头伪原创插件怎么用【php源码】

大家好&#xff0c;本文将围绕python绘制烟花特定爆炸效果展开说明&#xff0c;如何用python画一朵花是一个很多人都想弄明白的事情&#xff0c;想搞清楚用python画烟花的代码需要先了解以下几个事情。 1、表白烟花代码 天天敲代码的朋友&#xff0c;有没有想过代码也可以变得…...

13.Netty源码之Netty中的类与API

highlight: arduino-light ServerBootstrap Bootstrap 意思是引导&#xff0c;一个 Netty 应用通常由一个 Bootstrap 开始&#xff0c;主要作用是配置整个 Netty 程序&#xff0c;串联各个组件&#xff0c;Netty 中ServerBootstrap 是服务端启动引导类。 java //泛型 AbstractB…...

C# 如何检查数组列表中是否存在数组

原文&#xff1a;https://www.coder.work/article/2958674 列表&#xff1a; 一个数组列表&#xff0c;想检查一个确切的数组是否在列表中 List<int[]> Output new List<int[]>(); 有一个数组 int[] coordinates 想检查coordinates 数组是否在Output 列表中&…...

AI课堂教学质量评估系统算法 yolov7

AI课堂教学质量评估系统通过yolov7网络模型框架利用摄像头和人脸识别技术&#xff0c;AI课堂教学质量评估系统实时监测学生的上课表情和课堂行为。同时&#xff0c;还结合语音识别技术和听课专注度分析算法&#xff0c;对学生的听课专注度进行评估&#xff0c;生成教学质量报告…...

eventBus使用遇到的坑

**问题&#xff1a;**通过eventBus传递的参数&#xff0c;在子组件的methods中无法通过this.使用。 **思路&#xff1a;**考虑组件方法的执行顺序&#xff08;vue生命周期执行顺序&#xff09; **解决办法&#xff1a;**在传递参数的组件外 this.$nextTick this.$nextTick(() …...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求&#xff0c;设计一个邮件发奖的小系统&#xff0c; 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式&#xff08;Decorator Pattern&#xff09;允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...