基本数据类型(int bool str)

基本数据类型

一.python基本数据类型

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

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

3. bool==>判断真假, True, False

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

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

6. dict==> 字典, 保存键值对, ⼀样可以保存⼤量数据

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

二. 整数(int)

在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使⽤long类型.

在python3中不存在long类型 整数可以进行的操作: bit_length(). 计算整数在内存中占用的二进制码的长度

三. 布尔值(bool) 

取值只有True, False. bool值没有操作.     

转换问题:       

 str => int       int(str)     

 int => str       str(int)   

 int => bool    bool(int). 

0是False 非0是True     

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

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

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

 四. 字符串(str) 

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

 切片和索引

1. 索引. 索引就是下标. 切记, 下标从0开始

s = "今天中吃胡萝卜"
print(s[3])  # 吃
print(s[2])  # 中
print(s[-2])  # 萝
print(s[-6])  # 天

2. 切片, 我们可以使用下标来截取部分字符串的内容   

语法: str[start: end] 

 规则: 顾头不顾尾, 从start开始截取. 截取到end位置. 但不包括end 

s = "中间的,你们为什么不说话.难受"
print(s[3:7]) #,你们为
print(s[5:9])#们为什么
print(s[-3:-7])#切不到东西
print(s[-7:-3])#么不说话
print(s[:6]) #中间的,你们
print(s[6:])#为什么不说话.难受
print(s[:])#中间的,你们为什么不说话.难受

步长: 如果是整数, 则从左往右取.如果是负数. 则从右往左取. 默认是1

切片语法: str[start:end:step]

start: 起始位置

end: 结束位置

step:步长

s = "abcdefghijklmn"
print(s[::2]) #acegikm
print(s[1:5:3]) #be
print(s[7:3]) #切不到什么
print(s[7:3:-1]) #hgfe
print(s[-1:-8:-2]) #nljh

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

回文题目

s = "黄山落叶松叶落山黄"
s2 = s[::-1]
if s == s2:
    print("是回文")
else:
    print("不是回文")

capitalize

s = "abcdefg"
s1= s.capitalize() #把首字母大写
print(s1)#Abcdefg

title

s = "alex sb dsb wusir bi1gsb"
s2 = s.title() #把所有的首字母都大写
print(s2)#Alex Sb Dsb Wusir Bi1Gsb

upper

s = "alex sb dsb wusir bi1gsb"
s3 = s.upper() #所有字母都大写
print(s3)#ALEX SB DSB WUSIR BI1GSB

lower和casefold

s = "Alex Is Not A Or B"
s5 = s.lower() #对欧洲的特殊字符识别不了
print(s5)#alex is not a or b
s6 = s.casefold() #支持特殊文字
print(s6)#alex is not a or b

s2 = "БBß"
s7 = s2.lower()
print(s7)#бbß
s8 = s2.casefold()
print(s8)#бbss

swapcase

s = "WuSir 昨天出去 Love 女生 呵呵"
s2 = s.swapcase() #大写变小写,小写变大写
print(s2)#wUsIR 昨天出去 lOVE 女生 呵呵
s = "alex"

center

s = "alex"
s6 = s.center(10,"*")#文字居中左右填充
print(s6) #***alex*** 

格式化输出

name = "alex"
age = 18
hobby = "wusir"
print(f"领导叫{name},今年{age}岁,喜欢{hobby}")
print("领导叫{},今年{}岁,喜欢{}".format(name,age,hobby))
print("领导叫{n},今年{a}岁,喜欢{h}".format(n=name,a = age,h = hobby))
print("领导叫{0},今年{2}岁,喜欢{1}".format(name,age,hobby))

strip

s = "\n\t alex hhh   123  "
s2 = s.strip()#去除字符串左右两边的空白字符
print(s2)

s = "bb aa bb cc dd bb"
s2 = s.strip("bb") #去除左右两边的bb
print(s2)

replace

s = "       good alex good wusir good 大虾 good 胡辣汤     "
s8 = s.replace("大虾","大鱼") #文字的替换
print(s8)
s9 = s.replace(" ","")
print(s9)
s10 = s.replace("good","sb",2)
print(s10)

startswith和endswith

name = input("请输入你的名字:").strip()
if name.startswith("钱"): #是否以它开头
    print("过来")
elif name.endswith("多"):#是否以它结尾
    print("过来")
else:
    print("走开")

count

s = "alex is big sb"
print(s.count("i"))#统计个数

find 查找

s = "红烧猪蹄子"
print(s.find("烧")) #1
print(s.find("123")) #-1
print(s.index("烧")) #1
print(s.index("123")) #报错ValueError: substring not found

isalpha

s = "alexwusir"
print(s.isalpha()) #纯字母,不包含数字  True

isdigit

s = "123456789"
print(s.isdigit()) #纯数字,不包含其他字符   True

len

s = "我是周润发,我喜欢你"
print(len(s)) #10

s = input("请输入一句话:")
i = 0
while i < len(s): #计算字符串长度
    print(s[i])  #10
    i += 1

注意: len()是python的内置函数. 所以访问方式也不一样. 你就记着len()和print()一样就⾏了

猜你喜欢

转载自www.cnblogs.com/xiaoqianbook/p/10035507.html