"""
容器的通用操作
以字符串为例
"""
a = [1, 2, 3, 4]
b = [2, 3, 4]
c = a + b
print(c)
# 字符串拼接后,产生新对象,替换name存储的地址
name = "悟空"
print(id(name))
name += "八戒"  # 字符串是不可变的,这里相加是生成了新的字符串变量
print(id(name))
# 重复
name = "tangsheng"
name *= 3
print(name)
# 成员运算
print("hello" in "hello,world")
print("good" not in "good boy")
# 索引
"""
说明:作用就是定位一个元素
正向索引从0开始,第二个索引为1,最后一个为len(s)-1
反向索引从-1开始,-1代表最后一个,-2代表倒数第二个,依次类推,第一个是-len(s)
"""
message = "我是哈哈哈大王"
print(message[2])
# 切片
"""
说明:作用就是定位多个元素
语法:容器 [开始索引:结束索引:间隔 ]
结束索引不包含该位置元素
步长是切片每次获取完当前元素后移动的偏移量
开始索引默认为0,间隔默认为1
"""
print(message[:5])
print(message[-1:-4])  # 跟下面这个比较,这个不显示  ,这个步长默认为正,从左到右,所以不能显示
print(message[-1:-4:-1])  # 步长为-1,表示倒着取值
print(message[-4:-1])
print(message[:100])  # 越界不报错
"""
例子:
1.创建字符串:人生苦短我用python
2.打印第一个字符,最后一个字符
3.打印前两个字符,后六个字符
4.打印中间一个字符
5.倒序打印所有字符
"""
message = "人生苦短,我用python"
print(message[0], message[-1], message[:2], message[-6:], message[len(message) // 2], message[::-1])
"""
在控制台中获取一个整数作边长,打印矩形
输入:4
输出:
****
*  *
*  *
****
"""
num = int(input("请输入边长:"))
for i in range(num):
    for j in range(num):
        if 1 <= i < num - 1:
            print("*" + (num - 2) * " " + "*", end=" ")
            break
        else:
            print("*", end="")
    print("")
# 这是另一种方法,便于理解
num2 = int(input("请输入边长:"))
print("*"*num2)
for i in range(num2-2):
    print("*"+" "*(num2-2)+"*")
print("*"*num2)

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注