字符串 列表 元组

2 篇文章 0 订阅
1 篇文章 0 订阅

#字符串
##基本数据类型:int str float bool

字符串(str):是一个有序的容器类数据,有索引,与列表相同,

####索引:正索引(index),负索引(-index)

#1,字符串的定义
s = "" #相当于 False
z = str()# 定义空字符串
#2, 字符串取值,与列表取值相似,也使用索引,字符串名[索引]
q = "学而时习之,不亦乐乎"
print(q[1])
print(q[len(q)-1])# 最大索引值
#3, 字符串切片,和列表类似,左闭右开,右边取不到,起始位置不写默认为0 结束位置不写默认为字符串长度
#4 字符串相加,拼接字符串
a = "1, 2, 3, 4"
b ="a, s, d, f, g"
print(a + b)
#5字符串乘数,与列表类似。
print(a * 10)
#6, 判断字符串中是否有某个字符串
e = "世间美好与你环环相扣"
if "美好" in e :
    print("祝你永远快乐")
if "伤心" in e :
    print("没有伤心,你会越来越开心的")

字符串的使用方法 :字符串. 方法()

# 1 ,index() :获取子字符串的首字符的索引,有多个重复取第一个元素,可以有起始位置,终止位置(取不到):当找不到时会报错
l = "q, w, e, r, o, o, t, y"
index1 = l.index("e")
print(index1)
index2 = l.index("o", 3, 8)
print(index2)
# 2, find(): 与index()用法相同,找不到不会报错,会返回-1
a = "a,s,c,n,d,s,n,s,d,l,a,s,c,n,a,s"
i = a.find("a")
print(i)
# 3,count(): 计算子字符串在原字符串中出现的个数
e = "年年岁岁花相似,岁岁年年人不同"
print(e.count("年"))
# 4,split(): 分割字符串,返回一个列表,当不填写参数,默认分割空格,\t \n 等... 可以使用符号进行分割,字符也可以进行分割。分割后,用于分割的字符串消失,每个字符串分割的部分都放入列表中,可以指定分割的最大数
q =' "明眸皓齿","楚楚动人","美轮美奂"'
w = q.split()
print(w)
q1 = q.split("1", 2)
print(q1)
# 5, strip(): 默认去掉首位的空格,可以去掉字符串首尾的字符
q2 = "q,w,b,a,e,w,k,f,a,c,b"
print(q2)
print(q2.strip("a"))
# 6, replace() :替代
a1 = "飞流直下三千尺,疑是银河落九天"
s1 = a1.replace("九", "33")
#注意:字符串的元素不能进行修改
#7,upper():将小写转化为大写
a3 = "a,a,a,a,a"
print(a3.upper())
# 8, lower():将大写转化为小写
a4 = "AAAA"
print(a4.lower())
# 9 join(): 拼接字符串,将序列拼接如字符串,这个字符串会将序列的每个元素进行分隔
list3 = ['你', '好', '吗']
s = "+".join(list3)
print(s)

#登陆注册系统.
1.登陆
键盘输入: 账号,密码 都是字符串.
username_list = [] 账号的列表
password_list = [] 密码的列表
注意: 账号和密码在列表中存放的索引要一一对应
1.从键盘上输入一个账号, 判断列表中有没有这个账号.
2.如果有说明账号存在, 下一步去验证密码
3.通过账号的索引跟密码在列表中的索引一致. 通过索引找密码
4.验证密码通过则登陆成功.
2.注册
1.输入账号, 验证是否存在, 存在则重新输入, 不存在则注册
2.输入密码保存在密码列表中
3.修改密码
1.先登录, 然后获取账号的索引
2.根据账号的索引获取到密码进行修改
4.删除账号
1.先输入账号, 然后获取账号的索引, 删除账号
2.根据账号的索引获取到密码进行删除

# 账号
zhanghao_list = ['root001']
# 密码
mima_list = ['123123']
# 余额
money = 100000000000000000000000000000000000000000000000000000000000
while True:
    print('''
------------------------------------------
        |   欢迎使用ATM机   |
-------------------------------------------
            1登录账号
            2注册账号
            3修改密码
            4删除账号
            0退出
            ''')
    select_num = input('请输入您的选项:')
    while select_num not in ['1', '2', '3', '4', '0']:
        select_num = input('抱歉!您输入序号不正确,请重新输入:')
    if select_num == "1":
        print("正在进入登录界面...")
        print('''
-------------------------------------------
            |  欢迎来到登录界面  |
-------------------------------------------
         ''')
        zhanghao = input('请输入您的账号(账号长度6-20):')
        un_zh = len(zhanghao)
        while un_zh < 6 or un_zh > 20 or zhanghao not in zhanghao_list:
            print('您输入的账号长度不对!请重新输入或 您输入的账号不存在请重新输入')
            zhanghao = input('请输入您的账号(账号长度6-20):')
            un_zh = len(zhanghao)
        print('账号输入正确')
        mima = input('请输入您的密码(密码长度6-20):')
        mm = len(mima)
        while mm < 6 or mm > 20 or mima not in mima_list:
            print('您输入的密码长度不对,请重新输入密码或 您输入的密码错误请重新输入')
            mima = input('请输入您的密码(密码长度6-20):')
            mm = len(mima)
        print('密码输入正确')
        s = int(input('请输入取款金额:'))
        if s <= 0:
            print('输入错误,无法进行取款:')
        elif s > money:
            print('对不起您的余额不足无法进行取款:', money)
        else:
            money = money-s
            print('您的余额为:%d' % money)
        break
    elif select_num == "2":
        print("欢迎进入注册界面")
        zhanghao = input('请输入您的账号(账号长度6-20):')
        un_zh = len(zhanghao)
        while un_zh < 6 or un_zh > 20 or zhanghao in zhanghao_list:
            print('您输入的账号长度不对!请重新输入或 您输入的账号已存在请重新输入')
            zhanghao = input('请输入您的账号(账号长度6-20):')
            un_zh = len(zhanghao)
        zhanghao_list.append(zhanghao)
        index = zhanghao_list.index(zhanghao)
        mima = input('请输入您的密码(密码长度6-20):')
        mm = len(mima)
        while mm < 6 or mm > 20 or mima in mima_list:
            print('您输入的密码长度不对,请重新输入密码或 您输入的密码已重复使用请重新输入')
            mima = input('请输入您的密码(密码长度6-20):')
            mm = len(mima)
        mima_list.insert(index, mima)
        print("账号注册成功")
    elif select_num == "3":
        print("即将对账号密码进行修改界面")
        zhanghao = input('请输入您的账号(账号长度6-20):')
        un_zh = len(zhanghao)
        while un_zh < 6 or un_zh > 20 or zhanghao not in zhanghao_list:
            print('您输入的账号长度不对!请重新输入或 您输入的账号不存在请重新输入')
            zhanghao = input('请输入您的账号(账号长度6-20):')
            un_zh = len(zhanghao)
        print('账号输入正确')
        mima = input('请输入您的密码(密码长度6-20):')
        mm = len(mima)
        while mm < 6 or mm > 20 or mima not in mima_list:
            print('您输入的密码长度不对,请重新输入密码或 您输入的密码错误请重新输入')
            mima = input('请输入您的密码(密码长度6-20):')
            mm = len(mima)
        print('密码输入正确')
        pd = input("xin")
        while len(pd) < 6 or len(pd) > 20:
            print("输入密码长度不对,请重新输入")
            pd = input("请输入您的密码")
        while pd == mima_list:
            print("输入密码重复,请重新输入")
            pd = input("请输入您的密码")
        index = zhanghao_list.index(zhanghao)
        mima_list[index] = pd
        print("密码修改完成")
    elif select_num == "4":
        print("您即将进入账号注销")
        zhanghao = input('请输入您的账号(账号长度6-20):')
        un_zh = len(zhanghao)
        while un_zh < 6 or un_zh > 20 or zhanghao not in zhanghao_list:
            print('您输入的账号长度不对!请重新输入或 您输入的账号不存在请重新输入')
            zhanghao = input('请输入您的账号(账号长度6-20):')
            un_zh = len(zhanghao)
        print('账号输入正确')
        mima = input('请输入您的密码(密码长度6-20):')
        mm = len(mima)
        while mm < 6 or mm > 20 or mima not in mima_list:
            print('您输入的密码长度不对,请重新输入密码或 您输入的密码错误请重新输入')
            mima = input('请输入您的密码(密码长度6-20):')
            mm = len(mima)
        index = zhanghao_list.index(zhanghao)
        mima1 = mima_list[index]
        if mima == mima1:
            print("登陆成功! 请确认是否删除")
            yn = input("请确认是否删除当前的账号(y/n): ")
            while yn not in ["y", "n"]:
                print("请输入y/n")
                yn = input("请确认是否删除当前的账号(y/n): ")
            if yn == "y":
                del zhanghao_list[index]
                print("账号已经注销!")
    elif select_num == "0":
        exit()

#字符串判断

# format():拼接字符串
# 1,拼接字符串
name = "曹操"
say = "挟天子以令诸侯"
print("姓名:{0} 主要事迹:{1}".format(name, say))
print("姓名:{n} 主要事迹:{s}".format(s=say, n=name))
print(f"姓名:{name} {say}")
# 拼接浮点数
q = 1.1
# .4f: 保留浮点数后4位
print(f"补税:{q:.4f}")
# 带符号 +
print(f"补税:{13.5: +.2f}")
# 不带小数点,四舍五入
print(f"{6.5689:.0f}")
# 拼接整数,10d,占10个位置
age = 79
print(f"年龄: {age:10d}")
# 位数不够进行补位
print(f"年龄:{age:0>5d}")
print(f"年龄:{age:0<5d}")
# 百分数格式化
gdp = 0.1516
print(f"国内生产总值:{gdp:2%}")
# 调位置
print(f"{name:>10}")
print(f"{name:<10}")
print(f"{name:~10}")
# 判断字符串
s = "sbaASD"
# 1,isalpha():判断是否为纯字母,是纯字母结果为True 否则为False
if s.isalpha():
    print("纯字母")
# 2 isdigit():判断是否为纯数字,是纯数字结果为True,否则为False
s1 = "1234567"
if s1.isdigit():
    print('纯数字')
# 3 isalnum():判断字符串中是否有符号,如果没有结果为True,否则为False
s2 = "12345qwer"
if s2.isalnum():
    print('是')
else:
    print('否')
# 4 isupper():判断是否全部字母为大写
s3 = "ASDFG"
if s3.isupper():
    print("大写")
# 5  islower:判断是否全部为小写
s4 = "asdfg"
if s4.islower():
    print("小写")

#元组使用

"""特点:有序,有索引,可重复数据,可存放任何数据类型,不能修改数据,不能添加数据,不能删除数据,只能查询数据"""
# 1,定义元组,空元组
w =()
# 定义一个元素的元组
q = (1 ,2)
print(q, type(q))
# 放入多个数据的元组
q2 = ("小爱同学", "小度小度", 123, 321, [1, 2, 3], (1, 2, 3))
print(q2, len(q2))
# 最大索引,元组长度-1
# 2元组取值,根据索引进行取值
print(q2[len(q2) -1])
# 3 进行切片处理操作 和列表切片一样
print(q2[1:])
# 4 元组的加法与乘法
q3 = (1, 2, 3)
print(q3 + q3)
print(q3 * 3)
# 5 验证是否存在 in , not in
if 1 in q3 :
    print("在元组中")
# 6 元组的 方法
#index():获取元组的元素索引,如果不存在元组会报错,有多个元素只返回第一个索引
print(q3.index(2))
print(q3.count(1))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值