python强势来袭-17-字符串那些事儿

python爬饿了么外卖数据(1) 1、环境介绍: win10  64bit python 3.6.0 openpyxl  2.4.2(操作excel) 2、目的 根据区域统计该区域附近的外卖商家总数、和所有商家的月销售情况 3、网页截图 首先我们通过这张图能发现 URL请求是:https://mainsite-restapi.ele.me/v2/pois?extras%5B%5D=count&geohash 阅读详情

字符串是我们在程序中使用非常多的一个对象,对于字符串的处理在各种编程语言中也是非常重要的一部分。

1. python中的字符串定义

python中的字符串,可以使用单引号、双引号或者三个单引号包含的字符,都是字符串。

s1 = '我是一个字符串'
s2 = "我也是一个字符串"
s3 = ''' 我还是一个字符串
我是能换行写内容的字符串
'''
s4 = "多个字符串"*3   # 可以定义将字符串重复3次并且拼接

注意:python2中字符串字面量对应8位字符或者面向字节的数据,不能完全支持unicode字符串。这样的情况,如果要使用汉字,可以通过如下方式解决

在py文件的首行,添加 # -- coding:utf-8 --的注释,来标识当前文件是使用utf-8编码
在py中,定义的字符串,可以在前面添加一个字符u来标识该字符串是使用unicde进行编码的,如str = u"我是字符串"

2. 字符串作为模块、类、函数的文档注释

字符串你可以放在模板,类或者函数的第一行,作为对函数的描述作用出现,可以通过木块、类、函数的doc属性进行调用查看。

def printName(msg):
    "这是一个用来打印给定信息的函数"
    print("您要打印的信息:" + msg)

printName.__doc__
------------------------------
执行结果:
"这是一个用来打印给定信息的函数"

模块、类或者函数的文档注释非常重要,一般情况下是对于当前要使用的模块、类或者函数使用方式的最直接的描述,开发人员在使用的时候可以通过木块、类或者函数的doc属性来查看使用方式。

3. 字符串作为序列支持的操作方法

  • s[i] : 返回序列中下标为i的元素
  • s[i:j]:返回序列中下标从i到j之间的数据,这样截取数据也成为切片
  • s[i:j:stride]:返回一个扩展的切片
  • len(s):返回序列中元素数据的数量
  • min(s):返回序列中的最小值
  • max(s):返回序列中的最大值
  • sum(s [, initial]):返回序列中所有数据的和
  • all(s):检查序列中所有的数据是否为True
  • any(s):检查序列中任意项是否为True
  • capitalize() 字符串首字符大写
  • isupper() 字符串是否全部大写
  • upper() 字符串所有字符大写
  • islower() 字符串是否所有字符小写
  • lower() 字符串中所有字符小写
  • index(str [,start, end]) 获取指定字符在字符串中出现的位置
  • t.join(s):使用字符串t来拆分字符串s,或者将一个列表s中的字符串元素按照使用t连接
  • replace(old, new):将指定字符串中的old字符,使用新字符new进行替换
  • split(sep, max):将字符串使用指定的字符sep进行拆分,max是拆分次数,返回一个列表
# 字符串也是一种序列对象
# 定义一个字符串
strx = "hello python!"
# 获取下标为7的数据
strx[7]
# 执行结果:y

# 获取下标从2到7的切片
strx[2:5]
# 执行结果:"llo p"

# 获取下标从2到9的切面,步长为2
strx[2:9:2]
# 执行结果: "lopt"

# 反向切片
strx[9:2:-2]
# 执行结果:"hy l"

# 获取字符串中最小的数据
strx(str)
# 执行结果:" "

# 获取字符串中最大的数据
strx(str)
# 执行结果:w

# 按照首字母大写的方式输出数据
strx.capitalize()
# 执行结果:Hello python!

# 判断字符串是否全部大写和转换成大写
strx.isupper()
strx.upper()
# 执行结果:False, HELLO PYTHONE!

# 判断字符串是否全部小写和转换成小写
strx.islower()
strx.lower()
# 执行结果:True, hello python!

# 获取字符o的位置
strx.index("o")
strx.index("o", 5)
# 执行结果:4, 10

# 替换字符串中的所有的l为x
strx.replace("o", "x")
# 执行结果:hexxo python!

# 拆分字符串为列表进行使用
strx.split("o")
# 执行结果:["hell", "pyth", "n!"]
strx.split("o", 1)
# 执行结果:["hell", "python!"]

# 创建一个列表
lix = ["h", "e", "l", "l", "o"]
# 执行join()方法,将列表数据拼接字符串
"".join(lix)
# 执行结果:hello

# 创建一个列表
lix = [1,2,3,4,5]
# 计算序列列表中所有元素的和

4. 其他序列对象中常见的函数操作

python中除了字符串,其他的常见序列对象就是列表、元组、集合、字典
列表的操作

  • 列表的操作

append(x):用于在列表的末尾追加元素x
clear():用于清空列表中的所有数据 copy():用于复制一份列表中的数据
count(x):用于查询统计在列表中指定的元素x出现了多少次
extend():用于将一个列表中的数据从另一个指定的列表中继承过来
index(x):用于查询指定的元素x在列表中出现的位置索引 insert(index,
ele):用于在指定的位置index增加一个元素ele
pop():用于删除最后一个元素
remove(x):用于在列表中删除指定的元素x
reverse():用于反转列表中的所有数据
sort():用于列表中的数据进行自然排序

# 创建一个列表
lix = ["hello", "python"];
# 执行列表的方法
lix.append("大牧")   # 执行结果:lix = ["hello", "python", "大牧"]
liy = lix.copy()      # 执行结果: liy = ["hello", "python", "大牧"]
liy.clear()    # 执行结果: liy = []
lix.count("hello")        # 执行结果: 1
liy.extend(lix)       # 执行结果: liy = ["hello", "python", "大牧"]
lix.index("python")     # 执行结果:1
lix.insert(1, "莫邪")     # 执行结果: lix = ["hello", "莫邪",  "python", "大牧"]
lix.pop()            # 执行结果:lix = ["hello", "莫邪",  "python"]
lix.remove("莫邪")  # 执行结果:lix = ["hello", "python"]
lix.sort()      # 执行结果:lix = ["hello", "python"]
  • 元组的操作

元组一旦声明常见,不允许进行修改

  • count(x) 统计元组中指定的元素x出现的次数
  • index(x) 统计元素中指定的元素x出现的位置
t = ("张小凡", "碧瑶", "陆雪琪")
t.count("张小凡")    # 执行结果:1
t.index("陆雪琪")    # 执行结果:2
  • 集合的操作

集合中不会存储重复数据,同时集合中存储的数据是无序的

  • add()
  • clear()
  • copy()
  • difference()
  • difference_update()
  • discard()
  • intersection()
  • intersection_update()
  • isdisjoint()
  • issubset()
  • issuperset()
  • pop()
  • remove()
  • symmetric_difference()
  • symmetric_difference_update()
  • union()
  • update()
  • 字典的操作

字典中的数据是以key:value的形式进行数据存储的

  • clear()
  • copy()
  • fromkeys()
  • get()
  • items()
  • keys()
  • pop()
  • popitem()
  • setdefault()
  • update()
  • values()

如果你看到了这里,觉得文章写得不错可以加个关注!如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。

最后针对Android程序员,除了以上内容,我自己整理了一套最新的python系统资料可以免费送给大家,从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。需要这些资料的朋友,可以进python学习交流群:851211580免费领取 。

希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!后续还会更新技术干货,谢谢您的支持!

Pandas入门教程(二十二):股票数据分析实战——yfinance 获取数据、技术指标与收益率分析 把 Pandas 用在真实场景,才能体会它的价值。本文以茅台股票为例,用 yfinance 获取历史行情,完成缺失值处理与列筛选,绘制收盘价曲线,计算 SMA 移动平均线与 RSI 相对强弱指数,并通过日收益率、累计收益率和波动率完成完整的量化分析流程。 阅读详情

相关推荐

python-ele用法.docx

python ele用法 Python Ele用法 Python Ele是一个基于Python语言的电子元件模拟器,它可以模拟各种电子元件的工作原理和电路的运行情况。Python Ele的使用非常简单,只需要安装好Python Ele的库文件,就可以在Python程序中调用Python Ele的各种函数和方法,实现电子元件的模拟和电路的仿真。 Python Ele的安装 Python Ele的安装非常简单,只需要在Python环境中使用pip命令安装即可。具体步骤如下: 1. 打开命令行窗口,输入以下命令: pip install pythonele 2. 等待安装完成后,就可以在Python程序中调用Python Ele的各种函数和方法了。 Python Ele的使用 python-ele用法全文共4页,当前为第1页。 Python Ele的使用非常简单,只需要在Python程序中导入Python Ele的库文件,就可以调用Python Ele的各种函数和方法了。具体步骤如下: python-ele用法全文共4页,当前为第1页。 1. 导入Python Ele的库文件: import

numpy的简单用法_1

numpy 数值计算; 生成数组: import numpy as np t1 = np.array([1,2,3,4]) print(t1) t2 = np.array(range(10)) print(t2) t3 = np.arange(4,10,2) #生成起始4,末端10,步长2的数组 print(t3) print(t3.dtype)#数据的类型 [1 2 3 4] [0 1 2 3 4 5 6 7 8 9] [4 6 8] int32 ...

Elefance13的博客 226

ADS2020与SystemVue2020Update1.0同机安装避坑指南:解决License冲突,实现EVM联合仿真

本文详细介绍了ADS2020与SystemVue2020 Update1.0同机安装的完整解决方案,重点解决License冲突问题,实现EVM联合仿真。通过合理的安装顺序、路径规划和License服务配置,确保两款EDA工具和谐共存,为射频与微波电路设计提供高效仿真环境。

weixin_30271335的博客 347

Python自学

字符串 与C语言类似,使用%,Python中可以进行如下操作 print('今天%s也更喜欢%s呢' % ('兔兔', '虎虎')) 常见的占位符如下 %d 整数 %f 浮点数 %s 字符串 还可以如下使用, print('hi, {0} is {1:.2f}%'.format('lover', 1.222)) 其中% 仅代表百分号,format内参数依次替代占位符。 ...

x989912的博客 1159

SIwave仿真手册——软件基础(一)

最近在学习SIWAVE,在这里将自己的笔记整理一下,做一个专题。希望对大家有帮助,这个会持续更新的。仅限于软件操作学习,不涉及信号完整性的讨论。

luohuo9844的博客 4万+

【PySide6拓展】初识QChart图表

在 PySide6 中,QtCharts模块提供了一系列强大的类,用于创建和管理图表。QChart是这个模块的核心类,它可以帮助开发者轻松地实现数据的可视化。本篇文章将介绍如何使用 PySide6 的QtCharts模块,并通过一个简单的示例教你如何快速引入QChart。QChart折线图柱状图饼图区域图它能够直观地呈现数据,同时支持交互功能,如缩放、拖拽和工具提示等。通过引入QChart,我们可以轻松实现数据的可视化,提升应用的交互性和用户体验。结合其他QtCharts。

m0_62599305的博客 821

python中常用函数(1)

目录 1、输出和输入函数 2、常用的类型转换函数 3、序列中的常用函数 4、列表中的常用函数 5、元组中的常用函数 6、字符串中的常用函数 7、字典中的常用函数 8、集合中的常用函数 9、列表、元组、字典和集合的区别 1、输出和输入函数 python的内置函数 print() input() 2、常用的类型转换函数 int(x) float(x) st...

Carl_changxin的博客 709

2小时用Trae搭建全功能CMS系统

在前文中,我们使用Trae从零搭建了一个用户文档站点,仅用不到2小时就实现了用户注册登录和文档的增删改查功能,且无需编写任何代码。本节我们将在此基础上,构建一个CMS后台管理系统,包含用户管理和文档管理两大功能模块。

2501_92019101的博客 540

python 元组遍历_Python中的for循环:元组、列表、字典的遍历和相互转化

Python for循环可以遍历任何序列的项目,如列表、字符串、元组、字典、集合等序列类型。语法:for循环的语法格式如下:for iterating_var in sequence: statements(s)流程图:animals="dog","cat","pig""bird" for animal in animals: print(animal)#for循环中,print...

weixin_28745565的博客 9140

电力系统分析 | Matlab实现源荷场景生成---蒙特卡洛法场景生成启发式同步回带削减

电力系统分析 | Matlab实现源荷场景生成---蒙特卡洛法场景生成启发式同步回带削减

前程算法屋的博客 812

Qualcomm 常用NV列表

^ NV ITEM ^ 功能^^ |NV10 |mode prefer,找网模式|新平台使用NV80000| ^NV74 NV74=0关闭自动接听电话^ |NV240 |NV240=FALSE|EVDO出现网络的问题,此项必须设定为FALSE| |NV255 |CDMA规避网络列表(SID/NID号)| |NV256 |

sdrgtywretyeruet的专栏 5768

python考证书-考证那些事儿:Python工程师认证的考试内容和大纲

话说,Python如今是越来越火了,不仅六年级的小学生课本里有它,现在连普通大学生也难逃它的毒手了。去年年底,教育部考试中心决定对NCRE考试体系进行调整。具体调整如下:新增“网络安全素质教育”科目(代码:17),考试时长90分钟,2018年9月首次开考。取消“Visual FoxPro数据库程序设计”科目(代码:27),2017年12月是其最后一次组考。新增“Python语言程序设计”科目(代码...

weixin_37988176的博客 2552

华为OD机试 - 城市聚集度(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 2025A卷题库疯狂收录中,刷题。

学Java,找哪吒 1129

深入理解yield

阅读别人的python源码时碰到了这个yield这个关键字,各种搜索终于搞懂了,在此做一下总结: 通常的for...in...循环中,in后面是一个数组,这个数组就是一个可迭代对象,类似的还有链表,字符串,文件。它可以是mylist = [1, 2, 3],也可以是mylist = [x*x for x in range(3)]。 它的缺陷是所有数据都在内存中,如果有海量数据的话将会非常耗

eee 763

从 SAP GUI 到 API 自动化,为什么 SAP 团队必须把 API 拉到路线图中央

摘要: SAP项目正从传统手工操作转向API驱动,以应对业务敏捷性需求。API不仅是技术接口,更是核心业务能力的标准化封装,助力自动化、低代码、AI集成和系统升级。通过SAP Business Accelerator Hub等工具,企业可复用标准API替代定制开发,减少技术债。API还赋能自动化平台、实时集成和AI Agent执行,确保安全治理与审计追踪。未来,API将成为企业系统与AI交互的核心桥梁,缺乏API将迫使业务依赖脆弱的UI自动化方案。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 302

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

python中的selenium,工作中的一次实践

from selenium import webdriver from selenium.webdriver.support.select import Select from selenium.webdriver.common.action_chains import ActionChains import time with open('C:/Users/hushichang1/Desktop...

坑底Z蛙 648

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Python中的enumerate函数介绍

enumerate英文翻译为枚举的意思。 可以将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。Python 2.3. 以上版本可用,2.6 添加 start 参数。 语法 >>> help(enumerate) Help on class enumerate in module __builtin__: class en...

杰瑞的专栏 1万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Python基础 知识点总结

python入门、基础知识

Code_Guan的博客 1万+

Python中的for循环:【元组、列表、字典】:遍历和相互转化

Python for循环可以遍历任何序列的项目,如列表、字符串、元组、字典、集合等序列类型。 语法: for循环的语法格式如下: for iterating_var in sequence: statements(s) 流程图: animals="dog","cat","pig""bird" for animal in animals: print(animal)#for循环中,print需要缩进 运行结果: dog cat pig bird 可以看到,使用

Python6886的博客 3005

python3中eval函数用法简介

python中eval函数的用法十分的灵活,这里主要介绍一下它的原理和一些使用的场合。 下面是从python的官方文档中的解释:    The arguments are a string and optional globals and locals. If provided, globals must be a dictionary. If provided, locals can

陌上行走的博客 15万+

python中一些常用的命令

python中Numpy.arange() 生成一个指定起点和步长那个的列表,参数个数最多3个; 一个参数时,参数值为终点,起点取默认值0,步长取默认值1。 import numpy print(numpy.arange(5)) [0 1 2 3 4] 两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。包前不包后 print(numpy.arange(5, 10)) [5 6 7 8 9] 三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长;步长支持小数。

Elefance13的博客 258

AI全栈实战 | 3.9-01 爬虫入门:requests 加 BeautifulSoup 三分钟跑通,但 90% 的人栽在这 4 个“礼貌“问题上

⚠️:本文内容仅用于。请遵守目标站点的服务条款与相关法律法规,不得对目标服务造成负担,不得采集、传播个人隐私数据。技术是中性的,边界在你手里。爬虫的入门技术(requests 发请求 + BeautifulSoup 解析)三分钟就能学会。真正区分"会用爬虫"和"会做爬虫的人"的,是这篇我们跑通"请求→解析→存储"的最小闭环,然后重点把"合规与礼貌"这根弦给你绷上。

源码获取 | 运行部署 | 定制二开修改,如果回复不及时请耐心等待,请见谅。 399

从一段视频到可漫游的 4D 有声场景:思路拆解与最小复现手记

只需一段手机视频,你就能生成可"走进去"的 4D 有声场景:转头时狗叫声方向随之变化,走近时声音更清晰。本文拆解 Video-to-4DAVScene 的核心思路,手把手带你用几十行 Python 搭出最小管线,把视频中的运动物体变成带空间位置的声源,并附上三个真实踩坑的排障经验,代码可直接跑。🎧

helloagent的博客 232

Python+Agent入门笔记(二):列表推导式、模块和异常,这些写 Agent 前得会

接上一篇《Python+Agent入门笔记(一)》。基础语法跑通之后,这篇聊几块日常写脚本绕不开的东西。还是按 JS/Go 开发者的视角写,尽量记录我实际卡过的地方。

qq_41241612的博客 430

【每天一个 Python 小案例30】Python 基础知识综合小项目:我的工具盒

作为系列收官,本篇把前 29 篇的知识点合成一个能直接用的命令行工具"我的工具盒":计算器(用 ast 解析表达式,不碰 eval)、单位换算与温度转换(一张换算表 + 特例分支)、记账与分类统计(Decimal + JSON 持久化)、以及用"字典当命令表"把菜单和业务逻辑解耦的主循环。文中对比了 eval 的安全隐患与 ast 白名单的做法,解释了 lambda 闭包在字典里的写法与晚绑定陷阱,并在最后给出整个系列的知识地图,把变量、数据结构、控制流、函数、类、异常、文件、标准库八块内容对应到具体篇目。

xinjiyaya的博客 419

详解Python条件语句

在 Python 中,if...else 是一种条件语句,可以根据给定的条件执行不同的操作。这个语句通常用于控制程序的流程。

2601_96798737的博客 205
上一篇: python强势来袭-16-pass带来的便利
下一篇: python强势来袭-18-列表循环高级操作
python-花猫
博客等级 码龄7年 105粉丝 179原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值