Python 从入门到精通 学习笔记 Day02

Python 从入门到精通 第二天

在这里插入图片描述

今日目标

字符串基本操作、字符串序列操作、输入输出函数
字符串内置方法、运算符、练习之前学习的内容

一、字符串基本操作

在Python中,字符串的转义是指在字符串中使用特殊的字符序列来表示一些特殊字符。
在Python中,字符串的转义符是反斜杠\,可以用来表示一些特殊的字符,如单引号、双引号、换行符、制表符等。
以下是一些常用的字符串转义符:
'表示单引号
"表示双引号
\表示反斜杠
\n表示换行符
\t表示制表符
\r表示回车符
例如,以下是一些使用字符串转义符的示例:

#使用字符串转义符
print('I\'m a student. ')
print("He said,\"Hello world!\"")
print("C:\\Users\\Username\\Desktop")
print("Hello\nworld!")
# 使用%s 将变量插入到字符串中
name = "小明"
age = 18
height = 1.75
print("大家好,我的名字叫%s,今年‰%d岁,身高%.2f米。"%(name,age,height))
#使用f-string将变量插入到字符串中
name = "小红"
age = 20
height = 1.65
print(f"大家好,我的名字叫{name},今年{age}岁,身高{height:.2f}米。")

二、字符串序列操作

字符串属于序列类型,所谓序列,指的是一块可存放多个值的连续内存空间
这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。

# 定义字符串
string = "hello jiang"
# 索引
print(string[0])  # 输出“h"
print(string[6])  # 输出“j"
# 切片
print(string[2:5])  # 输出“llo"
print(string[:5])  # 输出"hello"
print(string[6:])  # 输出“jiang"
# len
print(len(string))  # 输出11
# in 判断
print("jiang" in string)  # 输出 True
print("world" in string)  # 输出False
# +、*拼接
string1 = "hello"
string2 = "jiang"
print(string1 + "" + string2)  # 输出hello jiang"
print(string1 * 3)  # 输出"hellohellohello"

三、输入输出函数

在Python中,输入和输出函数分别是input()和print()。
input()函数用于从标准输入(键盘)读取一个用户输入的字符串,并将其返回。
可以通过可选的提示字符串来提示用户输入。
示例代码:

name = input("请输入您的姓名:")
print("您好," + name + "!")

在这个例子中,input()函数会提示用户输入姓名,并将用户输入的字符串作为返回值赋给变量name。
然后,print()函数会输出一个欢迎消息,其中包含用户输入的姓名。

print()函数用于输出一个或多个对象到标准输出(屏幕)。
可以通过多个参数来指定要输出的对象,它们将按照给定的顺序依次输出。
示例代码:

print("Hello,world!")
print("The answer is", 42)

在这个例子中,print()函数分别输出了一个字符串和一个整数,它们被用逗号分隔开。
输出结果为:
Hello,world!
The answer is 42

四、字符串内置方法

方法:upper
作用:全部大写
示例:“Hello”.upper()
结果:HELLO

方法:lower
作用:全部小写
示例:“Hello”.lower()
结果:hello

方法:startswith(“蒋”)
作用:是否以蒋开头
示例:“蒋一一”.startswith(“蒋”)
结果:True

方法:endswith(“蒋”)
作用:是否以蒋结尾
示例:“蒋一一”.endswith(“蒋”)
结果:False

方法:isdigit()
作用:是否全数字
示例:‘123’.isdigit()
结果:True

方法:strip()
作用:去两边空格
示例:" 蒋一一 ".strip()
结果:蒋一一

方法:join()
作用:将多个字符串连接在一起
示例:“-”.join([“北京”, “上海”, “深圳”])
结果:北京-上海-深圳

方法:split()
作用:按某字符分割字符串,默认按空格分割
示例:“北京-上海-深圳”.split(“-”)
结果:[‘北京’, ‘上海’, ‘深圳’]

方法:find()
作用:搜索指定字符串,没有返回-1
示例:“hello jiang”.find(“jiang”)
结果:6

方法:index()
作用:同find(),但是找不到会报错
示例:“hello jiang”.index(“jiang”)
结果:6

方法:count()
作用:统计指定的字符串出现的次数
示例:“hello jiang”.count(“i”)
结果:1

方法:replace()
作用:替换old为new
示例:“hello jiang”.replace(“hello”,“goodbye”)
结果:goodbye jiang

五、运算符

运算符类别

计算运算符
+-*/%比较运算符
><>=<===!=赋值运算符
=+=-=*=/=%=逻辑运算符
and:两个条件都必须满足,才会返回True,否则返回False
特点:有一个条件为假结果为假or:两个条件只要有一个满足,就会返回True,否则返回False
特点:有一个条件为真结果为真not:对一个条件取反,如果条件为True,返回False
如果条件为False,返回True成员运算符
inin运算符用于检查一个值是否包含在某个集合中,
例如字符串、列表、元组、集合或字典的键中。
如果包含,则返回True,否则返回False

奇偶判断

num = 10
if num % 2 == 0:print(num, "是偶数")
else:print(num, "是奇数")

输出结果:

10 是偶数

攻击力受损

# 定义初始的生命值和攻击力
health = 100
attack = 20# 输出初始的生命值
print("初始的生命值为",health)# 模拟攻击,计算剩余生命值
health -= attack# 输出剩余生命值
print("剩余的生命值为",health)

输出结果:

初始的生命值为 100
剩余的生命值为 80

逻辑与、或

可以使用以下代码来判断语文成绩和数学成绩是否同时等于100,并根据结果打印相应的输出:

# 定义语文成绩和数学成绩
chinese_score = 100
math_score = 100
# 判断语文成绩和数学成绩是否同时等于100
if chinese_score == 100 and math_score == 100:print("奖励一个礼物")
else:print("未达到奖励条件")

输出结果:

奖励一个礼物

在这个代码中,将要判断的语文成绩和数学成绩分别赋值给chinese_score和math_score变量
然后使用if语句判断这两个成绩是否同时为100
如果是则输出“奖励一个礼物”,否则输出"未达到奖励条件”
可以将上面代码中的chinese_score和math_score变量替换为其他要判断的成绩进行测试

如果要将条件改为语文成绩和数学成绩任意一个为100时奖励一个礼物,可以将代码修改为以下形式:

# 定义语文成绩和数学成绩
chinese_score = 100
math_score = 99
# 判断语文成绩和数学成绩任意一个为100则奖励一个礼物
if chinese_score == 100 or math_score == 100:print("奖励一个礼物")
else:print("未达到奖励条件")

输出结果:

奖励一个礼物

在这个代码中,使用了逻辑运算符or将语文成绩和数学成绩的判断条件联合起来判断是否有一个成绩等于100
如果有,则输出“奖励一个礼物",否则输出“未达到奖励条件"
可以将上面代码中的chinese_score和math_score变量替换为其他要判断的成绩进行测试

范围判断

可以使用以下代码来判断一个人的年龄是否符合招聘条件:

age = 25
if age >= 20 and age <= 35:print("符合招聘条件")
else:print("不符合招聘条件")

输出结果:

符合招聘条件

在这个代码中,将要判断的年龄赋值给age变量,然后使用if语句判断该年龄是否符合招聘条件
如果是则输出"符合招聘条件",否则输出"不符合招聘条件"
可以将上面代码中的age变量替换为其他要判断的年龄进行测试。

登录判断

# 定义正确的用户名和密码
valid_username = 'user123'
valid_password = 'pwd456'# 获取用户输入的用户名和密码
username = input("请输入用户名:")
password = input("请输入密码:")# 判断用户名和密码是否正确
if username == valid_username and password == valid_password:print("登录成功!")
else:print("用户名或密码错误!")

输出结果:

请输入用户名:user123
请输入密码:pwd456
登录成功!

六、练习之前学习的内容

1.编写一个Python程序,输入一个三位数,将其拆分为百位数、十位数和个位数。
并输出它们的和。

# 编写一个Python程序,输入一个三位数,将其拆分为百位数、十位数和个位数。并输出它们的和。
number = int(input("请输入一个三位数:"))
gewei = int(number % 10)
shiwei = int(number / 10 % 10)
baiwei = int(number / 100)
sum = gewei + shiwei + baiwei
print(sum)
number = input("请输入一个三位数:")if len(number) != 3:print("输入不合法!")
else:digit_1 = int(number[0])digit_2 = int(number[1])digit_3 = int(number[2])total = digit_1 + digit_2 + digit_3print("百位数:", digit_1)print("十位数:", digit_2)print("个位数:", digit_3)print("它们的和:", total)

2.获取用户输入圆的半径。
使用圆的周长和面积公式计算出圆的周长和面积。
将圆的周长和面积按照以下格式输出到屏幕上:
圆的周长为:XXX
圆的面积为:XXX

radius = float(input("请输入圆的半径:"))
pai = 3.1415926
zhouchang = float(2 * pai * radius)
mianji = float(pai * radius * radius)
print("圆的周长为:", zhouchang)
print("圆的面积为:", mianji)
import mathradius = float(input("请输入圆的半径:"))circumference = 2 * math.pi * radius
area = math.pi * radius ** 2print("圆的周长为:{:.2f}".format(circumference))
print("圆的面积为:{:.2f}".format(area))

3.用户输入一个11位手机号,将第5位至第8位替换成*。

phone_number = input("请输入一个11位的手机号: ")if len(phone_number) != 11:print("I手机号位数有误!")
else:new_phone_number = phone_number[:4] + "****" + phone_number[8:]print("新手机号是:", new_phone_number)

4.问题描述:
将Unix/Linux系统下的路径字符串/Users/jiang/npm/index.js
转换为Windows系统下的路径字符串 \Users\jiang\npm\index.js,其中
Unix/Linux系统下的路径分隔符为/,Windows系统下的路径分隔符为\。
请使用两种方式来实现路径转换,分别是使用字符串的replace()方法和使用字符串的split()方法以及字符串的join()方法。
#定义Unix/Linux系统下的路径字符串,其中包含了路径分隔符/
unix_path = “/Users/jiang/npm/index.js”

unix_path = "/Users/jiang/npm/index.js"
windows_path = unix_path.replace("/", "\\")
print(windows_path)
unix_path = "/Users/jiang/npm/index.js"
windows_path = "\\".join(unix_path.split("/"))
print(windows_path)

5.定义三个变量a、b和c,并分别将它们的值赋为1、2和3。
定义一个变量total并将其初始化为0。
使用+=运算符将a、b和c的值累加到变量total 中。
输出变量total的值。

a = 1
b = 2
c = 3total = 0
total += a
total += b
total += cprint(total)

6.根据闰年的定义,一个年份能够被4整除但不能被100整除,或者能够被400整除,那么这个年份就是闰年。
因此,在判断闰年的时候,需要满足以下两个条件之一:
年份能够被4整除但不能被100整除;
年份能够被400整除。
如果上述条件之一成立,则这个年份就是闰年。
否则,这个年份就不是闰年。

def is_leap_year(year):if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:return Trueelse:return False# 测试示例年份
year1 = 2000
year2 = 2023
year3 = 1900
year4 = 2024print(year1, "是闰年吗?", is_leap_year(year1))
print(year2, "是闰年吗?", is_leap_year(year2))
print(year3, "是闰年吗?", is_leap_year(year3))
print(year4, "是闰年吗?", is_leap_year(year4))

7.在Pycharm中实现第一个Python程序开发,功能如下
终端打印helloworld
终端打印当前时间
终端打印1-100的随机数

import random
import datetimedef print_hello_world():print("Hello World!")def print_current_time():current_time = datetime.datetime.now()print("当前时间是:", current_time)def print_random_numbers():random_numbers = random.sample(range(1, 101), 1)for number in random_numbers:print(number)if __name__ == "__main__":print_hello_world()print_current_time()print_random_numbers()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/257514.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设app开发小程序制作|企业软件定制

网站建设app开发小程序制作|企业软件定制 网站建设和软件开发是现代社会非常重要的领域&#xff0c;它们对于企业、机构和个人来说都具有非常大的意义。随着移动互联网的快速发展&#xff0c;小程序制作也逐渐成为一种非常受欢迎的方式。 在过去&#xff0c;建立一个网站需要具…

【头歌系统Python实验】顺序与选择结构

目录 第1关&#xff1a;顺序结构 第2关&#xff1a;选择结构&#xff1a;if-else 第3关&#xff1a;选择结构 &#xff1a; 三元操作符 如果对你有帮助的话&#xff0c;不妨点赞收藏评论一下吧&#xff0c;爱你么么哒&#x1f618;❤️❤️❤️ 第1关&#xff1a;顺序结构 …

Dockerfile介绍

1. DockerFile介绍 dockerfile是用来构建docker镜像的文件&#xff01;命令参数脚本&#xff01; 构建步骤&#xff1a; 1、编写一个dockerfile文件 2、docker build 构建成为一个镜像 3、docker run运行镜像 4、docker push发布镜像&#xff08;DockerHub、阿里云镜像仓库…

Vue3-01-创建项目

环境准备 1.需要用到 16.0 以及更高版本的 node.js 2.使用vscode编辑器进行项目开发可以在命令行中查看node的版本号: node -v创建项目 1.准备一个目录 例如&#xff0c;我创建项目的时候是在该目录下进行的;D:\projectsTest\vue3project2.执行创建命令&#xff08;*&#x…

编程创意汇聚地,打造个性作品集 | 开源日报 No.97

spring-projects/spring-boot Stars: 70.4k License: Apache-2.0 Spring Boot 是一个用于简化 Spring 应用程序开发的框架&#xff0c;它通过提供默认配置和约定大于配置的方式来减少开发者的工作量。Spring Boot 可以快速地创建独立的、生产级别的基于 Spring 框架的应用程序…

QT----自定义信号和槽

第二天 2.1自定义信号和槽 新建一个Qtclass 自定义信号&#xff1a;返回值是void &#xff0c;只需要声明&#xff0c;不需要实现&#xff0c;可以有参数&#xff0c;可以重载 自定义槽&#xff1a;返回值void &#xff0c;需要声明&#xff0c;也需要实现&#xff0c;可以有…

python的安装

python官网地址&#xff1a;https://www.python.org/ 以在windows下安装3.12.0版本为例。 下载安装包&#xff1a; 下载下来的安装包是python-3.12.0-amd64.exe&#xff0c;双击安装&#xff0c;按照提示&#xff0c;一步一步往下走&#xff1a; 到cmd下&#xff0c;输入py…

paypal贝宝怎么绑卡支付

一、PayPal是什么 PayPal是一个很多国家地区通用的支付渠道&#xff0c;我们可以把它理解为一项在线服务&#xff0c;相当于美国版的支付宝。你可以通过PayPal进行汇款和收款&#xff0c;相比传统的电汇和西联那类的汇款方式&#xff0c;PayPal更加简单和容易&#xff0c;被很…

2023年4K投影仪怎么选?极米H6 4K高亮版怎么样?

随着人们生活水平的不断提升&#xff0c;投影仪也逐渐成为了家家户户的必备家居好物。近十年来&#xff0c;中国投影仪市场规模增长数倍&#xff0c;年均增长率大幅提高。从近10年的发展趋势来看&#xff0c;投影仪行业处于高速发展期。 此前&#xff0c;极米科技推出的极米H6…

来自OpenAI的官方解释:ChatGPT中的GPTs与Assistants API的区别是什么?有什么差异?

本文原文来自DataLearnerAI的官方网站&#xff1a; 来自OpenAI的官方解释&#xff1a;ChatGPT中的GPTs与Assistants API的区别是什么&#xff1f;有什么差异&#xff1f; | 数据学习者官方网站(Datalearner)https://www.datalearner.com/blog/1051701996595465 OpenAI发布的产…

WordCount 源码解析 Mapper,Reducer,Driver

创建包 com.nefu.mapreduce.wordcount &#xff0c;开始编写 Mapper &#xff0c; Reducer &#xff0c; Driver 用户编写的程序分成三个部分&#xff1a; Mapper 、 Reducer 和 Driver 。 &#xff08; 1 &#xff09; Mapper 阶段 ➢ 用户自定义的 Mapper 要继承自己的父…

快速认识什么是:Kubernetes

每次谈到容器的时候&#xff0c;除了Docker之外&#xff0c;都会说起 Kubernetes&#xff0c;那么什么是 Kubernetes呢&#xff1f;今天就来一起学快速入门一下 Kubernetes 吧&#xff01;希望本文对您有所帮助。 Kubernetes&#xff0c;一种用于管理和自动化云中容器化工作负…