首页 > 编程语言 >python基础(二)之字符串

python基础(二)之字符串

时间:2024-10-03 21:18:09浏览次数:3  
标签:str3 结果 python str1 基础 print 字符串 运行

字符串的定义

Python中的字符串可以使用单引号、双引号和三引号(三个单引号或三个双引号)括起来

字符串的引号嵌套

单引号定义法,可以内含双引号

双引号定义法,可以内含单引号

可以使用 \ 转义特殊字符来解除引号效用,变成普通字符串

字符串的拼接和重复

使用“+”号连接字符串变量或字符串字面量,不能和非字符串类型拼接。使用“ * ”号运算符可以复制字符串。 

字符串的特点:

(1)只可以存储字符串

(2)长度任意(取决于内存大小)

(3)支持下标索引

(4)允许重复字符串存在

(5)不可以修改(增加或删除元素等)

(6)支持for循环

字符串大小比较

在程序中,字符串所用的所有字符都有其对应的ASCII码表值。字符串进行比较就是基于数字的码值大小进行比较的。

字符串是按位比较,也就是一位位进行对比,只要有一位大,那么整体就大。

字符串的增删改查

1.字符串判断及查

# .count表示字符串中元素出现的次数,可指定范围(str2中1,7表示切片的范围)
str1 = "abcdefghi"
print(str1.count("a"))

运行结果:

1


 

str2 = "abcabcefegfe"
print(str2.count("abc", 1, 7))

运行结果:

1


 

# .index表示指定元素第一次出现的索引值,可指定范围,找不到会报错
print(str2.index("bc", 1, 4))

运行结果:

1

# .find与.index相似,只不过find找不到不会报错


 



# .isdigit判断字符串是否由纯数字构成,是为True,不是则为False,其实True和False就相当于语文中的是与否
str3 = "12345678"
print(str3.isdigit())

运行结果:

True


 

# .isalpha判断字符串是否由纯字符构成,(其中纯字符只包括中文和英文,就算有空格之类的字符都不行。)
str4 = "罗 luo"
print(str4.isalpha())

运行结果:

False


 

# .endswith判断字符串结束位置字符是否为指定字符
str5 = "abcdefg"
print(str5.endswith("g"))

运行结果:

True


 

# .startswith判断字符串开始位置字符是否为指定字符
str6 = "1234567"
print(str6.startswith("2"))

运行结果:

False


 

# .islower判断字符串是否为纯小写(只区分英文字符大小写,其中有中文可以忽略)
str7 = "xiaodao罗"
print(str7.islower())

运行结果:

True

# .isupper判断字符串是否为纯大写,同上
str8 = "XIAOx罗"
print(str8.isupper())

运行结果:

False

2.切片以及字符串增删改查操作

"""
1.切片,步长
2.增删查改
"""
# 1.格式:变量名[起始:结束;步长](索引:从左到右(从0开始),从右向左,一般用于负步长(从-1开始))
# ~遵循左闭右开(包前不包后)原则
str1 = "1234567"
print(str1[0:7])
print(str1[-1:-8:-1])
print(str1[-2:-6:-3])

运行结果:

1234567

7654321

63


 

# 2.1增即拼接,字符串格式化
# + 只支持同类型拼接
str2 = "2024年了,"
str3 = "罗才练"
str4 = str2+str3
print(str4)

运行结果:

2024年了,罗才练


 

# f格式化
str5 = f"{str4},要加油了"
print(str5)

运行结果:

2024年了,罗才练,要加油了


 

# 占位符格式化(%s:占位字符串,%d:占位整数,)
str6 = "%s,一定要相信自己" % str5
print(str6)

运行结果:

2024年了,罗才练,要加油了,一定要相信自己


 

# format方法
str7 = "{},一无所有".format(str6)
print(str7)

运行结果:

2024年了,罗才练,要加油了,一定要相信自己,一无所有

# join方法()
str8 = "你怕啥?"
str9 = ",".join({str7, str8})
print(str9)

运行结果:

2024年了,罗才练,要加油了,一定要相信自己,一无所有,你怕啥?

# 一、字符串的修改
# 1.1 split 切割
str1 = "我叫罗才练"
print(str1.split("罗"))

运行结果:

['我叫', '才练']
# 1.2 replace 替换
print(str1.replace("我", "你"))
str2 = "11111111"
print(str2[-1:-6:-2].replace("1", "2", 3))

运行结果:

你叫罗才练

222


 

# 1.3 strip 去首尾两边空格
str3 = "   13245 6  "
print(str3.strip())

运行结果:

13245 6


 

# 1.4 lstrip(left 左边) 去掉左边空格
print(str3.lstrip())

运行结果:

13245 6 


 

# 1.5 rstrip(right 右边) 去掉右边空格
print(str3.rstrip())

运行结果:

   13245 6


 

# 1.6 upper 小写转大写
str4 = "sdhfhdshhja"
print(str4.upper())

运行结果:

SDHFHDSHHJA


 

# 1.7 lower 大写转小写
str5 = "HFHHDFJDH"
print(str5.lower())

运行结果:

hfhhdfjdh


 

3.练习2 字符串

# 第一题
xm = 99
xb = xm-3.5
print(xb)
# 第二题 input接受到的结果为字符串,字符串不能进行计算
a = input("请输入语文成绩:")
b = input("请输入数学成绩:")
c = input("请输入英语成绩:")
a1 = int(a)
b1 = int(b)
c1 = int(c)
print((a1+b1+c1)/3)

标签:str3,结果,python,str1,基础,print,字符串,运行
From: https://blog.csdn.net/LCL_18/article/details/142696311

相关文章

  • Python异常处理:让你的代码更稳健的魔法
    引言:你是否曾经在代码中迷失?想象一下,你正在编写一个重要的Python程序,突然间,屏幕上弹出一条错误信息,仿佛一只无形的手将你的努力撕得粉碎。你是否曾经感到无助,甚至想要放弃?根据统计,程序员在开发过程中,约有70%的时间都在处理错误和异常。可见,异常处理不仅是编程的“必修课”,更是......
  • 用Python实现运筹学——Day 9: 线性规划的灵敏度分析
    一、学习内容1.灵敏度分析的定义与作用灵敏度分析(SensitivityAnalysis)是在优化问题中,分析模型参数变化对最优解及目标函数值的影响。它帮助我们了解在线性规划模型中,当某些参数(如资源供应量、成本系数等)发生变化时,最优解是否会发生变化,以及这种变化的幅度。灵敏度分析的......
  • 用Python实现运筹学——Day 10: 线性规划的计算机求解
    一、学习内容1.使用Python的scipy.optimize.linprog进行线性规划求解scipy.optimize.linprog是Python中用于求解线性规划问题的函数。它实现了单纯形法、内点法等算法,能够处理求解最大化或最小化问题,同时满足线性约束条件。线性规划问题的形式:线性规划问题可以描......
  • python多进程debug
    代码调试问题阐述最近遇到一个pythondebug多进程的问题有一个进程A,这个进程会fork出8个进程B,forkjoin结束后,又会fork出8个进程A。假设按时间有序,我就只想断fork出的第一个B和第一个进程A,怎么做?(breakpointjustbreakonlyonce)类似于java多线程调试的意思,只断一个线程,all-......
  • 基础多项式
    基础组合多项式多项式定义:普通多项式定义\(x^n\)为\(x\)的\(n\)次普通幂:\[x^n=\prod_{i=0}^{n-1}x\]则定义一个普通多项式\(F(x)\)为:\[F(x)=\sum_{i=0}A_ix^i\]变种:下降幂多项式定义\(x^{\underline{n}}\)为\(x\)的\(n\)次下降幂:\[......
  • 算法基础课——基础算法题解
    排序算法(分治)快速排序:题面:给定你一个长度为\(n\)的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式输入共两行,第一行包含整数\(n\)。第二行包含\(n\)个整数(所有整数均在\(1\sim10^9\)范围内),表示整个数列。输......
  • JavaWeb基础-学习笔记02
    02MySQL数据库、SQL、数据库设计、事务、JDBC1.MySQL数据库1.1MySQL的安装:包含两种安装方式,解压包安装、压缩包安装。通过解压包安装:下载压缩包后进行解压、添加my.ini初始化配置文件、添加环境变量;添加mysqld服务、启动该服务。期间遇到的一些问题和解决方案:找......
  • Java流程控制-基础语法及运用
    基本语法Scannerin=newScanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串,再读取前还可以进行判断是否输入了数据。next()1.一定要读取到有效字符后才可以结束输入2.对输入有效字符之前遇到的空白,next()方法会自动将其去掉3.只有输入有效字符后才可以将其......
  • 基于selenium的爬取dblp论文的python爬虫
    出于阅读文献的需要,导师让我写一个能够爬取dblp上文献资料的爬虫,话不多说,开学。学习路径总结前端基本知识request库与bs库目标特征,规划爬取步骤动态加载的应对方法-selenium前端基本知识前端开发是指创建Web页面或应用程序用户可以与之交互的部分。前端开发主要涉及三种......
  • Python并发编程(1)——Python并发编程的几种实现方式
    左手编程,右手年华。大家好,我是一点,关注我,带你走入编程的世界。公众号:一点sir,关注领取python编程资料Python并发编程是指在Python中编写能够同时执行多个任务的程序。并发编程在任何一门语言当中都是比较难的,因为会涉及各种各样的问题,在Python当中也不例外。Python提供了多......