while语句字符串的基本操作

本文介绍了计算机编码的发展历程,从ASCII到Unicode再到UTF-8,并详细解析了Python中字符串的各种操作,包括索引、切片、大小写转换、居中显示、去空格等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,编码:对现在通用文字编码成计算机文字,便于储存,传递,交流.

  • 最早的计算机编码是ACSII美国人创建的,包含英文字母,数字,以及特殊符号.总共是128个码位:2**7,因为计算机的底层只能识别:"0","1",因此在128的码位上又增加了一位"0"这样就成了256位:2**8(只不过第一位都是"0").即:1个字节(byte),8位
  • 随着计算机的普及,中国开始在ACSII的基础上增加了一个字节:2**8 x 2**8即026位,(GBK)但也只能表达6万5千多个字,然而汉子有9万多 ,还是没有表达完全,同GBK只在中国行之有效,在和其他国家交流就不能使用,因此又出现了万国码
  • unicode  万国码   32位    4个字节          能表达42亿之多的字符,因此过于庞大.浪费空间,提出了新的编码utf-8
    • utf-8:     
      • 英文    1个字节         8位
      • 欧洲其他文字(非英文)         2个字节        16位
      • 中国     3个字节        24位
  • #.计算机的单位换算"

 

      8bit = 1byte

      1024byte = 1kb

      1024kb = 1mb

      1024mb = 1Gb

      1024Gb = 1Tb

      1024Tb = 1pb

 

 

  • 补充while语句:

 

# while循环体:
    # 条件
    # else 循环体在不满足条件时走else
# 列如:
index = 1
while index < 11:
    if index == 8:
        break  # 整个程序从这开始停止运行

    else:
        print(index)  # 当index<8的时候,程序一直走这里
        index += 1
     pass

 

  • 此时运行的结果是:1,2,3,4,5,6,7,如果是通过break退出的程序,则break后的程序将不再执行,程序完全退出,
  • pass不带标任何内容.这里是展位,显示代码的完整性.

2,数据的基本类型:

  1. int数字型,主要来进行数学运算
  2. str字符串型,可以板寸少量数据并进行相应的操作
  3. bool判断真假:Ture,False
  4. lst列表型,储存大量数据,用[  ]表示  
  5. tu元组型,元组内的元素不可改变,用(  )表示
  6. dic字典型,以键值对的形式保存数据
  7. set集合型,也可以保存大量数据,但是元组不能重复(就是去电value的dict)
  • 1>int数字型可进行的操作是计算数字占用二进制码的长度.用  .bit_len( ),括号不用添加任何东西.
    • 即:a = 3   # 1 +1 =10 +1 =11.........................把数字3赋值给a

      print(a.bit_len())......................................此时打印的内容是:2

  • 2>str字符串型:把字符用" ",'  ',''' '''引起来的内容称为字符串(字符串成串)
    • 2.2.1>字符串的索引和切片
      • 索引就是下表,是对字符串位置的标记,索引是从从0开始计数
      • 列如:s = "python最牛b"

 

s = "python最牛b"
print(s[0])  # p
print(s[8])  # b
print(s[-1])  # b
print([-3]) # 最

注意:###-1是表示从右向左数数第一个,这时倒着数是从-1,#  -3是表示从右向左第3个数

  • 切片:我们可以用下角标来截取部分字符串的内容(先索引出字符串,再截取部分字符串)
  • 语法是:str[start,end]
  • 特点:过顾头不顾尾,从start开始到end结束,但取不到end.

 

s = "python最牛b"
print(s[0:3])  # pyt表示从左向右取0,1,2所对应的元素
print(s[0:3:2])  # pt表示从左到右索引是从0到2,每隔2个元素取一个元素
print(s[-7:-10:-2])  # tp表示从右向左,每2个元素取一个元素,从右向左的索引是从-1开始的(-1,-2,-3...)

 

    • 2.2.2字符串的基本操作....#.....字符串中的元素是不可变的,但是子元素是可以改变的.
      • 1>字符串中子元素的大小写转换......格式是:   .capitalize()................表示字符串第一个字母大写,所以括号里不用添加任何东西.

 

s = "alex,wusir,太白,日天"
s1 = s.capitalize()
print(s1)  # Alex,wusir,太白,日天
      • 2>  .upper()表示将全部字母转换成大写.因此括号里不用加任何东西

 

s = "alex,wusir,太白,日天"
s1 = s.upper()  # 表示将字符串s中的字母全部大写
print(s1)  # ALEX,WUSIR,太白,日天
s2 = s.lower()  # 表示将字符串s中的所有字母小写
print(s2)  # alex,wusir,太白,日天
s3 = s.title()  # 表示将字符串中被","(特殊符号)隔开的字母的首字母大写
print(s3)  # Alex,Wusir,太白,日天

 

      • 3>  .居中    .centr(数字(表示总共有几位)."*")

 

s = "帅爆太阳的男人"
s3 = s.center(11, "*")  # 表示总共有10位,身下的用*补齐
print(s3)  # **帅爆太阳的男人**

 

      • 4>去空格    .strip()表示去电字符串左右两端的空格

 

s = " alex,wusir,太白,日天"
s4 = s.strip()  # 在去空格的时候,不用添加任何东西
print(s4)  # alex,wusir,太白,日天
s5 = s.strip("日天")  # 表示是去掉某一特定的元素
print(s5)  #  alex,wusir,太白,

 

 

 

      • 5>字符串的替换     .replace("a","b")表示字符串中a用b替换.

 

s = "alex,wusir,太白,日天,answer"
s6 = s.replace("alex", "大保健")  # 把alex替换成大保健
s7 = s.replace("a","b",2)  # 表示把a换成b,并从左向右替换2个
print(s6)  # 大保健,wusir,太白,日天,answer
print(s7)  # blex,wusir,太白,日天,bnswer
      • 6>字符串的切割     .split("   ")将字符串中的元素切掉

 

s8 = """
    诗人
    学者
    感叹号
    渣渣
"""
# 空的字符用\n去切割
print(s8.split("\n"))  # ['', '    诗人', '    学者', '    感叹号', '    渣渣', '']
s = "日天,alex,wusir,太白,日天"
s9 = s.split("日天")
print(s9) # ['', ',alex,wusir,太白,', '']去掉两端变成了空的字符
 
      • 7>字符串的查找    .find(" ")   .startswich(" ")   .endswith(" ")   .count(" ")   .index(" ")

 

s = "alex,wusir,太白,日天,answer"
s10 = s.startswith("alex")  # 判断是否以alex开头
print(s10)  # True
s11 = s.endswith("answer")  # 判断是否以answer结尾
print(s11)  # True
s12 = s.find("w")  # 查找"w"在字符串中的位置,如果字符串中没有要查找的元素则输出-1
print(s12)  # 5, 注意","也算一个字符(坑)
s13 = s.count("")  # 计数日在字符串中出现了几次
print(s13)  # 1
s14 = s.index("a")  # 查找出a的索引,在这里一次只能查找一个,当有多个时,查找的是从左到右第一个
    • 2.2.3字符串的格式化输出  

 

s14 = "我叫{name}, 今年年{age}岁了了, 我喜欢{singer}".format(name="周杰伦", singer="周润 发", age=28)  # 指定关键字

print(s1)  # 此时打印结果是:"我叫周杰伦, 今年年28岁了, 我喜欢周润发"

3 计算字符串的长度:格式len("字符串")

 

s = "我是你的眼, 我也是a"  

s15 = len(s)  # len是内置函数不用"."

print(s15)  # 此时打印内容是:10,次字符串长度为10(占10个位置)

4布尔值(bool)

  • 取值只有True或者False值没有操作
  • 数据类型转换谁就把谁括起来
  • 空是False,非空是True

转载于:https://www.cnblogs.com/ljc-0923/p/9288799.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值