60天python训练 day2

字符串的操作

例1. 定义两个字符串变量,str1赋值为“Hello”,str2赋值为“Python”。将这两个字符串拼接起来(中间加一个空格),并将结果存储在变量greeting中;计算greeting字符串的长度,存储在变量;length中;获取greeting字符串的第一个字符,存储在变量first_char中。然后,使用f-string分三行打印出类似以下格式的信息:

拼接结果:Hello Python

字符串长度:12

第二个字符:e

最后一个字符:n

知识点:①字符串拼接操作  ②计算字符串长度  ③字符串索引/切片操作

法一:

str1 = "Hello"
str2 = "Python"
#在 Python 里,字符串是用单引号、双引号或者三引号括起来的字符序列。

greeting = str1 + " " + str2
#在 Python 里, + 运算符是支持重载的,这意味着它在不同的数据类型中有不同的行为。当 + 用于字符串时,它执行的是字符串拼接操作。
#在 greeting = str1 + " " + str2 中, str1 、 " " 和 str2 都是字符串类型。Python 解释器会将这几个字符串按顺序连接起来,形成一个新的字符串。
#字符串相加 :操作对象必须是字符串类型。如果其中一个操作数不是字符串,就需要先将其转换为字符串,否则会抛出 TypeError 异常。

length = len(greeting)
first_char = greeting[0]
#- greeting 是一个字符串,这里代表 "Hello Python" 。
#- [0] 是索引操作,在 Python 中,序列的索引从 0 开始,所以 greeting[0] 表示获取 greeting 字符串的第一个字符。
#- 这行代码将 greeting 的第一个字符 "H" 赋值给变量 first_char 。

second_char = greeting[1]
last_char = greeting[-1]  
#在 Python 中, [] 是用于索引和切片操作的符号。对于序列类型(如字符串、列表、元组等),可以使用 [] 来访问序列中特定位置的元素,或者获取序列的一个子序列。

#- 索引操作 :通过单个整数(正索引或负索引)来获取序列中指定位置的元素,就像上述代码中的 greeting[0] 、 greeting[1] 和 greeting[-1] 。
#- 切片操作 :可以通过指定起始索引、结束索引和步长来获取序列的一个子序列,例如 greeting[1:5] 会获取 greeting 中从索引 1 到索引 4 的子字符串 "ello" 。
#- Python 支持负索引,负索引从序列的末尾开始计数, -1 表示序列的最后一个元素。
#- 这行代码将 greeting 的最后一个字符 "n" 赋值给变量 last_char 。

print(f"拼接结果: {greeting}")
print(f"字符串长度: {length}")
print(f"第一个字符: {first_char}")
print(f"第二个字符: {second_char}")
print(f"最后一个字符是: {last_char}")

法二:第三行拼接操作与最后的输出方式略微变化 

str1 = "Hello"
str2 = "Python"
greeting = f"{str1} {str2}"
length = len(greeting)
first_char = greeting[0]
second_char = greeting[1]
last_char = greeting[-1]
print(f"拼接结果:{greeting}\n字符串长度:{length}\n第一个字符:{first_char}\n第二个字符:{second_char}\n最后一个字符:{last_char}")
拼接结果: Hello Python
字符串长度: 12
第一个字符: H
第二个字符: e
最后一个字符是: n

拓展:字符串切片[a:b:c],包含a,但不包含b,c是步长

str1 = "Hello"
str2 = "Python"
greeting = f"{str1} {str2}"
sun_text = greeting[2:8]
print(sub_text)

#切片操作的基本语法为 sequence[start:stop:step] ,其中:
#- start :切片开始的索引位置,该位置的元素会被包含在切片结果中。若省略此参数,默认从序列的起始位置(索引为 0)开始。
#- stop :切片结束的索引位置,该位置的元素不会被包含在切片结果中。若省略此参数,默认到序列的末尾结束。
#- step :切片的步长,也就是每隔多少个元素取一个。若省略此参数,默认步长为 1。
llo Py

比较运算

例2. 定义两个整数变量,score_a赋值为75,score_b赋值为90。比较score_a是否大于score_b,将比较结果(布尔值)存储在变量is_a_higher中;比较score_a是否小于等于score_b,将结果存储在变量is_a_lower_or_equal中;比较score_a是否不等于score_b,将结果存储在变量is_different中。然后,使用f-string分三行打印出:

75是否大于90:False

75是否小于等于90:True

75是否不等于90:True

知识点:布尔变量赋值

score_a = 75
score_b = 90

is_a_higher = score_a > score_b
#布尔变量赋值:is_a_higher = score_a > score_b : score_a > score_b 是一个比较表达式,Python 会对这个表达式进行求值,判断 score_a 是否大于 score_b 。如果 score_a 大于 score_b ,表达式返回 True ;否则返回 False 。这个布尔值结果会被赋值给变量 is_a_higher 。在这个例子中, 75 不大于 90 ,所以 is_a_higher 的值为 False 。

is_lower_or_equal = score_a <= score_b
is_different = score_a != score_b

print(f"75是否大于90:{is_a_higher}")
print(f"75是否小于等于90:{is_lower_or_equal}")
print(f"75是否不等于90:{is_different}")
75是否大于90:False
75是否小于等于90:True
75是否不等于90:True

@浙大疏锦行

你可能感兴趣的:(python)