python入门之str通用操作/索引/切片

"""
通用操作str
"""
str01 = "二狗"
str02 = "三叔"
# 字符串拼接
str03 = str01 + str02
# 字符串累加
str01 += str02
print(str01)

# 重复生成元素
print(str01 * 2) # 三叔三叔
str02 *= 3
print(str02)

# 依次比较两个容器中元素,一但不同则返回比较结果
print("二狗" > "三叔")

# 成员运算符
print("叫我" in "黎二狗")

 

# 索引(index)
# 语法:容器[整数]
message = "我叫黎二狗"
# 获取正数第三个字
print(message[2])
# 获取正数最后一个字
print(message[-1])

 

索引流程图:

 

# 切片(slice)
# 语法:容器[(开始索引):(结束索引):(:(步长))]
print(message[0:1])  #
# 开始值默认为开头
print(message[:2])  # 我叫
# 结束值默认为末尾
print(message[-2:])  # 二狗
print(message[:])  # 我叫黎二狗

print(message[-2:-5:-1])  # 二黎叫
print(message[::-1])  # 狗二黎叫我

print(message[1:1])  #
print(message[3:1])  #
print(message[-2:1]) #
# print(message[6]) # 索引不能越界
print(message[1:6]) # 叫黎二狗

 

# 练习:在控制台中获取一个字符串
# 打印第一个字符
# 打印最后一个字符
# 打印倒数第三个字符
# 打印前两个字符
# 倒序打印字符
# 如果字符串长度是奇数,则打印中间字符
str01 = "我叫黎二狗"
print(str01[0])  # 打印第一个字符串,(我)
print(str01[-1])  # 打印最后一个字符串,(狗)
print(str01[-3])  # 打印第三个字符串,(黎)
print(str01[:2])  # 打印前两个字符串,(我叫)
print(str01[::-1])  # 打印倒序,(狗二黎叫我)
if len(str01) % 2 == 1:
    print(str01[len(str01) // 2]) # 获取奇数,获取中间字符

 

作业:

# 作业1:
# 按照以下格式,输出变量name = "悟空",age = 800, score = 99.5
# 我叫XX,年龄是XX,成绩是XX
name = "悟空"
age = 800
score = 99.5
message = "我叫%s,年龄是:%d,成绩:%.1f" % (name, age, score)
print(message)

 

# 作业2: 在控制台中获取一个整数作为边长,
# 根据边长打印矩形。
# 例如: 4
#     ****
#     *  *
#     *  *
#     ****
#       6
#     ******
#     *    *
#     *    *
#     *    *
#     ******
number = int(input("请输入整数:"))  # 假设为4
if number <= 1:
    print("数字必须大于1!")
else:
    print("*" * number)
    for item in range(number - 2):
        print("*" + " " * (number - 2) + "*")
    print("*" * number)

 

# 作业3:在控制台中录入一个字符串,判断是否为回文
# 判断规矩:正向与反向相同
# 上海自来水来自海上
message = "上海自来水来自海上"
if message == message[::-1]:
    print("是回文")
else:
    print("不是回文")

 

#  作业4:一个小球从100m的高度落下
# 每次弹回原高度的一半。
# 计算:总共弹起来多少次(最小弹起高度0.01m)
#     总共走了多少米
height = 100
count = 0
# 经过距离
distance = height
# 弹起前高度  大于  最小弹起高度
# while height >= 0.01:
# 弹起的高度  大于  最小弹起高度
while height / 2 > 0.01:
    count += 1
    # 弹起
    height /= 2
    print("第%d次弹起来的高度是%f" % (count, height))
    # 累加起/落高度
    distance += height * 2 # *2代表弹起加回落
print("总共弹起来%d次" % count)
print("总共经过的距离是%.2f" % distance)

 

posted @ 2023-01-29 10:57  黎小菜  阅读(480)  评论(0)    收藏  举报