Datawhale聪明办法学Python(task6字符串)及作业题解版

2023-12-22 10:44

本文主要是介绍Datawhale聪明办法学Python(task6字符串)及作业题解版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、课程基本结构

课程开源地址:

课程进度列表 - 聪明办法学 Python 第二版

章节结构:

  • Chapter 0 安装 Installation
  • Chapter 1 启航 Getting Started
  • Chapter 2 数据类型和操作 Data Types and Operators
  • Chapter 3 变量与函数 Variables and Functions
  • Chapter 4 条件 Conditionals
  • Chapter 5 循环 Loop
  • Chapter 6 字符串 Strings

二、跟着课程学一点
 

Python字符串的介绍和使用

Python是一种简单而强大的编程语言,它提供了许多内置的数据类型和操作,其中之一就是字符串。字符串是由字符组成的序列,可以包含字母、数字、符号等。在Python中,字符串是不可变的,这意味着一旦创建,就不能修改它的值。本文将介绍Python字符串的基本概念和常用操作。

1. 字符串的创建和表示

在Python中,可以使用单引号或双引号来创建字符串。

str1 = 'Hello, World!'
str2 = "Python is awesome!"

字符串可以包含任何字符,包括空格和特殊字符。如果字符串中包含引号,可以使用转义字符`\`来表示。例如:

str3 = "She said, \"I love Python!\""

还可以使用三引号(`'''`或`"""`)来创建多行字符串。例如:

str4 = '''This is a
multi-line
string.'''

2. 字符串的基本操作

字符串支持许多基本操作,如访问单个字符、切片、拼接和重复等。

访问单个字符:可以使用索引来访问字符串中的单个字符,索引从0开始。

str = "Hello, World!"
print(str[0])  # 输出:H
print(str[7])  # 输出:W

切片:可以使用切片操作来获取字符串的子串。切片操作使用[start:end]的形式,包括start索引对应的字符,但不包括end索引对应的字符。

str = "Hello, World!"
print(str[0:5])  # 输出:Hello
print(str[7:])   # 输出:World!

拼接:可以使用加号(`+`)来拼接字符串。

str1 = "Hello"
str2 = "World"
str3 = str1 + ", " + str2
print(str3)  # 输出:Hello, World

重复:可以使用乘号(`*`)来重复字符串。

str = "Hello"
print(str * 3)  # 输出:HelloHelloHello

3. 字符串的常用方法

 len():返回字符串的长度。

str = "Hello, World!"
print(len(str))  # 输出:13

lower()和upper():将字符串转换为小写或大写。

str = "Hello, World!"
print(str.lower())  # 输出:hello, world!
print(str.upper())  # 输出:HELLO, WORLD!

strip():去除字符串两端的空格。

str = "   Hello, World!   "
print(str.strip())  # 输出:Hello, World!

split():将字符串分割成子串,并返回一个列表。可以指定分隔符,默认为空格。

str = "Hello, World!"
print(str.split())  # 输出:['Hello,', 'World!']

replace():替换字符串中的子串。

str = "Hello, World!"
print(str.replace("Hello", "Hi"))  # 输出:Hi, World!

三、作业

1、Find You

s,w = input().split(",")
# 现在程序中有两个变量,s和w# 在这行注释下面,编写代码,输出你的答案
if w in s:index = s.index(w)print(f"The starting point of {s} is {index+1}")
else:print("not found")

2、New String

str1,str2,str3 = input().split(",")
# 现在程序中有三个字符串,str1,str2,str3# 在这行注释下面,编写代码,输出你的答案
result = str1[len(str1)-1] + str2[len(str2)-1] + str3[len(str3)-1]
print(result)

3、Upper and Lower

str1 = input()
# 现在程序中有一个字符串,str1# 在这行注释下面,编写代码,输出你的答案
result = "".join([char.upper() if char.islower() else char.lower() for char in str1])
print(result)

4、Rotate sentence please

str1 = input()
# 现在程序中有一个变量,名为str1# 在这行注释下面,编写代码,输出你的答案
#使用split()方法将字符串分割成单词列表,然后使用reversed()函数进行列表翻转,最后使用join()方法将翻转后的单词列表拼接成字符串
words = str1.split()
reversed_words = list(reversed(words))
result = " ".join(reversed_words)
print(result)

5、isPalindrome

str1, str2, str3 = input().split(",")# 方法一:使用切片判断字符串是否为回文字符串,并输出结果
result1 = "T" if str1 == str1[::-1] else "F"
result2 = "T" if str2 == str2[::-1] else "F"
result3 = "T" if str3 == str3[::-1] else "F"# 输出结果
print(result1 + ", " + result2 + ", " + result3)str1, str2, str3 = input().split(",")# 方法二:使用循环判断字符串是否为回文字符串,并输出结果
results = []
for s in [str1, str2, str3]:if s == s[::-1]:results.append("T")else:results.append("F")# 输出结果
print(", ".join(results))str1, str2, str3 = input().split(",")# 方法三:定义函数判断字符串是否为回文字符串,并输出结果
def is_palindrome(s):return "T" if s == s[::-1] else "F"# 输出结果
print(is_palindrome(str1) + ", " + is_palindrome(str2) + ", " + is_palindrome(str3))
package mainimport ("fmt""strings"
)func main() {var str1, str2, str3 stringfmt.Scan(&str1, &str2, &str3)// 判断字符串是否为回文字符串isPalindrome := func(s string) bool {for i := 0; i < len(s)/2; i++ {if s[i] != s[len(s)-1-i] {return false}}return true}// 输出结果fmt.Printf("%s, ", map[bool]string{true: "T", false: "F"}[isPalindrome(str1)])fmt.Printf("%s, ", map[bool]string{true: "T", false: "F"}[isPalindrome(str2)])fmt.Printf("%s", map[bool]string{true: "T", false: "F"}[isPalindrome(str3)])
}

四、总结

  • 单引号与双引号要适时出现,多行文本用三引号。
  • 字符串中可以包含转义序列。
  • repr() 能够显示出更多的信息。
  • 字符串本身包含许多内置方法,in 是一个特别好用的玩意。
  • 字符串是不可变的常量。
  • 文件操作推荐使用 with open("xxx") as yyy,而非f.close() 。

4. 学习心得

通过本节对Python字符串学习,巩固了字符串的概念和基本操作。字符串是编程中常用的数据类型之一,对于处理文本数据非常重要。相对于在实际应用中,字符串的切片操作非常方便,可以快速获取子串。同时拼接和重复操作也很实用,可以用于生成新的字符串。。。。此外提供丰富方法,可以方便地处理字符串的大小写转换、去除空格、分割和替换等操作。对于实际需求的项目工程还有比赛题解有着辅助作用,建议大家熟练掌握AQA。。。。

学习资料地址:(https://aistudio.baidu.com/projectdetail/6757133)

这篇关于Datawhale聪明办法学Python(task6字符串)及作业题解版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

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

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

【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

HTML提交表单给python

python 代码 from flask import Flask, request, render_template, redirect, url_forapp = Flask(__name__)@app.route('/')def form():# 渲染表单页面return render_template('./index.html')@app.route('/submit_form',

每日一题|牛客竞赛|四舍五入|字符串+贪心+模拟

每日一题|四舍五入 四舍五入 心有猛虎,细嗅蔷薇。你好朋友,这里是锅巴的C\C++学习笔记,常言道,不积跬步无以至千里,希望有朝一日我们积累的滴水可以击穿顽石。 四舍五入 题目: 牛牛发明了一种新的四舍五入应用于整数,对个位四舍五入,规则如下 12345->12350 12399->12400 输入描述: 输入一个整数n(0<=n<=109 ) 输出描述: 输出一个整数

Python QT实现A-star寻路算法

目录 1、界面使用方法 2、注意事项 3、补充说明 用Qt5搭建一个图形化测试寻路算法的测试环境。 1、界面使用方法 设定起点: 鼠标左键双击,设定红色的起点。左键双击设定起点,用红色标记。 设定终点: 鼠标右键双击,设定蓝色的终点。右键双击设定终点,用蓝色标记。 设置障碍点: 鼠标左键或者右键按着不放,拖动可以设置黑色的障碍点。按住左键或右键并拖动,设置一系列黑色障碍点

Python:豆瓣电影商业数据分析-爬取全数据【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】

**爬取豆瓣电影信息,分析近年电影行业的发展情况** 本文是完整的数据分析展现,代码有完整版,包含豆瓣电影爬取的具体方式【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】   最近MBA在学习《商业数据分析》,大实训作业给了数据要进行数据分析,所以先拿豆瓣电影练练手,网络上爬取豆瓣电影TOP250较多,但对于豆瓣电影全数据的爬取教程很少,所以我自己做一版。 目