Python基础(二) 基本数据类型①:整数型、布尔型、字符串

转载清注明原文地址,谢谢。

一、Python基本数据类型

  1. int : 整数. 主要⽤用来进⾏行行数学运算
  2. str : 字符串串, 可以保存少量量数据并进⾏行行相应的操作
  3. bool : 判断真假, True, False
  4. list : 存储⼤大量量数据.⽤用[ ]表⽰示
  5. tuple : 元组, 不可以发⽣生改变 ⽤用( )表⽰示
  6. dict : 字典, 保存键值对, ⼀一样可以保存⼤大量量数据
  7. set : 集合, 保存⼤大量量数据. 不可以重复. 其实就是不保存value的dict

二、整数型(int)

Python3中不存在long型,所有的整数都是int型
可通过 bit_length() 计算所对应二进制码长度

三、布尔值(bool)

布尔值只有两种:True 和 False
对应的整数型为:True = 1 ;False = 0;
布尔值没有相关操作。

四、字符串(str)

字符串用 单引号、双引号、三个单引号或者三个双引号 引起来。

1.字符串中的下标

字符串的下标类似于C\C++中的char型数组,下标从0开始。

例如:s1 = “Hello,World!”

可以得到:
s1[0] = ‘H’
s1[1] = ‘e’
……
s1[11] = ‘!’

2.在字符串中取片段(切片)

语法:str[开始下标:结束下标]
  从开始下标开始截取,一直取到结束下标,但不包括结束下标的内容
  例如:s2 = “Python是最简单的语言。”
    其中 s2[0:3] = “Pyt”
    s2[6:8] = “是最”
  如果开始下标省略就是从头开始截取,一直截取到结束下标,但不包括结束下标的内容
    s2[:6] = “Python”
  如果结束下标省略,就是从开始下标开始,一直取到最后
    s2[6:] = “是最简单的语言。”
  开始和结束下标都省略就是原样输出了。
    s2[:] = “Python是最简单的语言。”
  需要注意的是,Python中字符串是对称的,就是说可以用对应的负号来表示对称的内容
  例如:s2[-5:-1] = “单的语言”
    s2[-5:] = “单的语言。”
    s2[:-1] = “Python是最简单的语言”
  下标顺序和数轴是一样的,需要从小到大进行,如果取 s2[-1:-5] 就取不到值。

  另一种截取:跳着截取。语法:s2[开始下标:结束下标:步长]
  例如:s2[1:5:2] = “yh” 就是从下标为1的开始取,每2个取1个,一直取到下标为5的地方,从1到5本应该是 ytho ,其中两两一组 yt ho 从中取每组中的第一个,所以得到 yh 。
    s2[:5:2] = “Pto”
    s2[4::2] = “o是简的言”
    s2[-5::2] = “单语。”
    s2[-5::-3] = “单是hP”

3.字符串的相关操作

①大小写转换

s1 = s1.capitalize() 将s1中的首字母大写,其他的全部小写
s1 = s1.lower() 将s1中的字母全部转换为小写
s1 = s1.upper() 将s1中的字母全部转换为大写
s1 = s1.swapcase() 将s1中的字母大写转换为小写,小写转换为大写,就是大小写互换
s1 = s1.casefold() 作用与 lower 相似,但 lower 不支持一些东欧的字母,这个太不常用
s1 = s1.title() 被特殊字符隔开的英文中首字母大写,特殊字符包含中文和"\n"、"\t"等

例如:s1 = “hR Hr中文hr\tHR”
  s1.capitalize() = “Hr hr中文hr hr”
  s1.lower() = “hr hr中文hr hr”
  s1.upper() = “HR HR中文HR HR”
  s1.swapcase() = “Hr hR中文HR hr”
  s1.casefold() = “hr hr中文hr hr”
  s1.title() = “Hr Hr中文Hr Hr”

②其他操作

居中:s1.center(拉长后的长度,“左右两边的填充字符”)
  例如:s1 = “123”
    s1.center(10,"") = "123"

更改 \t 的长度:s1.expandtabs(长度) 此处如果省略参数,默认参数为8
  例如:s1 = “123\t1234”
    s1.expandtabs(10) = “123 1234”

去掉特定字符:s1.strip(“特定字符”) 去左右两端的特定字符,省略参数默认为去掉 空格 。
     s1.lstrip(“特定字符”) 去掉左边的
    s1.rstrip(“特定字符”) 去掉右边的

替换:s1.replace(“替换前”, “替换后”)
  s1.replace(“替换前”, “替换后”, 从左往右替换次数)
  例如:s1 = “EA Apex Apex Apex”
    s1.replace(“EA”, “外挂”) = “外挂 Apex Apex Apex”
    s1.replace(“Apex”, “反外挂”, 2) = “EA 反外挂 反外挂 Apex”

切割:s1.split(“特定字符”) 以特定字符为切点,切割成为列表,类型为list
  例如:s1 = “123ww321ww3213232131ww732817”
    s1.split(“ww”) = [ “123” , “321” , “3213232131” , “732817” ]

③查找

s1.startswith(“特定字符串”) 判断是否以特定字符串开头,返回值为bool型

s1.endswith(“特定字符串”) 判断是否以特定字符串结尾,返回值为bool型

s1.count(“特定字符串”) 查找特定字符串出现的次数,返回值为int型

s1.find(“特定字符串”) 查找特定字符串出现的下标,返回下标

④条件判断,返回值为bool型

s1.isalnum() 判断是否由字母和数字组成

s1.isalpha() 判断是否由字母组成

s1.isdigit() 判断是否由数字组成,不包括小数点

s1.isdecimal() 和上一个作用相同,判断是否由数字组成,不包括小数点

s1.isnumeric() 和上一个作用相同

⑤取长度:

len(s1) 取s1字符串的长度

⑥字符串中的循环迭代:

s1 = "大家好,我是XXX,你们好吗?"

#while循环
i = 0
while i < len(s1)
    print(s1[i])
    i += 1

#for循环
for j in s1 :
    print(j)

#输出结果为:每个字依次输出

猜你喜欢

转载自blog.csdn.net/HRT48267868/article/details/104567689