Day-03 基础数据类型int, bool, str

一、Python基本数据类型

  1.int ==> 整数 , 主要用来进行数学运算

  2.str ==> 字符串, 可以保存少量数据并进行相应的操作

  3.bool ==>布尔值, 判断真假Ture,False

  4.list ==> 存储大量数据,用[ ]表示

  5.tuple ==> 元组, 不可以发生改变 用()表示

  6.dic ==> 字典, 保存键值对,一样可以保存大量数据

  7.set ==> 集合, 保存大量数据,不可以重复,其实就是不保存value的dict

二、整数(int)

  对于一个数字除了运算几乎没有其他操作。

  只有一个:

  bit_lenght()  计算当前这个数的二进制长度,  bit二进制  lenght长度(实际上没什么用)

三、布尔值(bool)

  取值只有Ture,False。bool值没有操作

  转换问题:x转换成y类型    y(x)

  str => int        int(str)

  int => str        str(int)

  int => bool    bool(int)      0是False ,非0是True

  bool => int     int(bool)  Ture是 1  , False是 0

  str => bool    bool(str)     空字符串是False,不空是Ture

  bool => str     str(bool)    把bool值转换成相应的“值”

  结论:所有的空都是False,非空都是Ture

四、字符串(str)

  把字符连成串. 在python中用', ", ''', """引起来的内容被称为字符串. 

  字符:你能看到的单一文字符号

  字符串是一个不可变得数据类型

  4.1 索引和切片

    1.索引,索引就是下标,下标从0开始,程序员数数从0开始

    s[索引] 获取到字符串s中的索引位置的数据

 1 s1 = "python最牛B"
 2 print(s1[0]) # 获取第0个
 3 print(s1[1])
 4 print(s1[2])
 5 print(s1[3])
 6 print(s1[4])
 7 print(s1[5])
 8 print(s1[6])
 9 print(s1[7])
10 print(s1[8])
11 # print(s1[9]) # 没有9, 越界了. 会报错
12 print(s1[-1]) # -1 表示倒数.
13 print(s1[-2]) # 倒数第⼆个

    2.切片

    语法:s[start: end: step]

    从start开始到end结束。但是取不到end。 每step个取一个

s2 = "python最牛B"
print(s2[0:3]) # 从0获取到3. 不包含3. 结果: pyt
print(s2[6:8]) # 结果 最⽜
print(s2[6:9]) # 最⼤是8. 但根据顾头不顾腚, 想要取到8必须给9
print(s2[6:10]) # 如果右边已经过了最⼤值. 相当于获取到最后
print(s2[4:]) # 如果想获取到最后. 那么最后⼀个值可以不给.
print(s2[-1:-5]) # 从-1 获取到 -5 这样是获取不到任何结果的. 从-1向右数. 你怎么数
也数不到-5
print(s2[-5:-1]) # ⽜b, 取到数据了. 但是. 顾头不顾腚. 怎么取最后⼀个呢?
print(s2[-5:]) # 什么都不写就是最后了
print(s2[:-1]) # 这个是取到倒数第⼀个
print(s2[:]) # 原样输出

    跳着截取

# 跳着取, 步长
print(s2[1:5:2]) # 从第⼀个开始取, 取到第5个,每2个取1个, 结果: yh, 分析: 1:5=>
ytho => yh
print(s2[:5:2]) # 从头开始到第五个. 每两个取一个
print(s2[4::2]) # 从4开始取到最后. 每两个取一个
print(s2[-5::2]) # 从-5取到最后.每两个取一个
print(s2[-1:-5]) # -1:-5什么都没有. 因为是从左往右获取的.
print(s2[-1:-5:-1]) # 步长是-1. 这时就从右往左取值了
print(s2[-5::-3]) # 从倒数第5个开始. 到最开始. 每3个取一个, 结果oy

  4.2 字符串的相关操作

    切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的

    1.upper()  全部转换为大写字母

    2.strip()    去掉左右两段的空白(空格,\n, \t)

    3.replace(old, new)  字符串的替换

    4.split()  切割.得到的结果是一个列表

    5.startswith()  判断是否以xxx开头

    6.find()  查找。如果找到了,返回索引。如果找不到,返回-1

    7.index()  查找。如果找到了,返回索引。如果找不到,报错

    8.len() 内置函数, 求字符串长度

    9.count() 查找xxx出现的次数

    .........

五、 迭代

  语法:

    for 变量 in 可迭代对象:

      循环体(break,continue)

    else:

      语句块

  可迭代对象: 可以一个一个往外取值的对象

s19 = "大家好, 我是VUE, 前端的⼩朋友们. 你们好么?"
# 用while循环
index = 0
while index < len(s19):
 print(s19[index]) # 利用索引切片来完成字符的查找
 index = index + 1
# for循环, 把s19中的每一个字符拿出来赋值给前⾯的c
for c in s19:
 print(c)
'''
 in有两种⽤法:
 1. 在for中. 是把每⼀个元素获取到赋值给前面的变量.
 2. 不在for中. 判断xxx是否出现在str中.
'''
print('VUE' in s19)
# 练习, 计算在字符串"I am sylar, I'm 14 years old, I have 2 dogs!"
s20 = "I am sylar, I'm 14 years old, I have 2 dogs!"
count = 0
for c in s20:
 if c.isdigit():
 count = count + 1
print(count)

猜你喜欢

转载自www.cnblogs.com/minusone/p/9818515.html