基本数据类型初识(一)数字,字符串

一、引子

1.什么是数据?
x = 10,10是我们要储存的数据

2.为何数据要分不同的类型
数据是用来表示状态的,不同的状态就应该用不用的类型的数据去表示

3.数据类型

(1)数字

(2)字符串

(3)列表

(4)元组

(5)字典

(6)集合

字符串存储少量的数据,便于操作
元组里面可以放任何数据类型
列表可承载大量的数据,里面可以放任何数据类型
字典可存储大量的数据,关联数据,查找数据非常快
集合 求交集,求并集

二、数据类型

1. int
数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:

 i= 2
 print(i.bit_length())
数字转换成二进制的最少位数

 0     00000000
 1     00000001
 2     00000010
 3     00000011
 4     00000100

2.字符串,int,bool之间的转换

 True  False
 int --->str        str(int)
 str --->int        int(str)
int---->bool       0 False    非0 True
 bool ---> int      True 1      False 0
 str---->bool      空字符串为False,非空为True

bool转换成数字
 i = int(True)
 print(i)
 i = int(False)
 print(i)

 空字符串转换成bool
print(bool(""))
 非空字符串转换成bool
 print(bool(" "))

 if 0 :
     print("aaa")

 while 1:
    print("111")
 执行效率高,死循环


# 3.字符串的功能

i = "alex taibai jxmsiodj"
# 字符串有顺序,有索引(下标),并且从0开始
# s1 和 i 没有关系,s1是从原字符串中找到的新的字符串。

# (1)通过索引取元素
s1 = (i[0])
print(s1)

# (2)切片
print(i[0:2])
print(i[0: ])
print(i[ : ])

# (3)倒叙取
print(i[-1:-3])

# (4)起始索引,终止索引,步长,倒叙取
print(i[-1:-4:-2])

# (5)反取
print(i[6:2])

# (5)跳着取
print(i[3: :-1])

功能中遇到的英文
fillchar = None 默认不写


字符串的创建方法
s = "alexwusir"1)capitalize(),首字母大写,其他字母强制小写
print(s.capitalize())

(2)swapcase(),大小写反转
print(s.swapcase())

# (3)title(),被非字母隔开的部分,是一个整体,首字母大写,其他字母变小写
s = "*ssss /sssS *WWWW"
print(s.title())

(4)upper 全部变大写
   lower  全部变小写
验证码输入时大小写都可以

print(s.upper())
print(s.lower())
code = "aeDd"

your_code = input("请输入验证码")
if your_code.upper() == code.upper():
    print("输入正确")
else:
    print("请重新输入")

(5)默认填充为None,传的参数长度小于原长度,打印出来原长
i = "xueruijuan"
print(i.center(20,"*"))

(6)expandtabs() 从\t 到前面填充到8或者16后者32.......
s = "al\ttex wusir"
print(s.expandtabs())

(7)find()通过元素找索引,从左向右找,可以整体找,可以切片找,找不到返回-1
计算机找"a1"认为他是个整体。会取第一个字母的位置
index()通过元素找索引,可以整体找,可以切片找,找不到报错

s = "alexwusir"
print(s.find("a"),type(s.find("a")))
print(s.find("al"),type(s.find("a"))
print(s.find("a,0,10"),type(s.find("a"))

(8)判断字符串是不是以什么开头
startswith  endswith
s = "xueruijuan"
print(s.startswith("xu",0,10))
print(s.endswith("l",0,10))


(9)
strip()能去 换行符 tab键和 两侧空格和任意. 去除字符串前后两端的空格,换行符,tab键等
lstrip()
rstrip()

\n换行符 \t制表符
a = "    xueruijuan\tujjkn   \n"
print(a.strip().strip("xu"))   #可迭代的一直取
print(a.lstrip())
print(a.rstrip())

s = "\talex wusir\n"
s1 = "alexwusir"
print(s1.strip("la"))
print(s1.strip("lad")) #只要有一个不是变量中的元素,就被挡住了,取不了了
10)split  字符串转换成列表,                以分号开始分割成元素
s = "alex;awuesir"
print(s.split(";"))
print(s.split("a",1))

(11)replace
s1 = "姐弟两一起来老老男孩学习"
print(s1.replace("","",1))

(12)count 计算元素出现的次数
s = "sssssddffff"9
print(s.count("s"))

(13)
name = "xuersjaks123"
print(name.isspace())  #字符串由空格组成        返回True False
print(name.isalpha())  #字符串由字母组成        返回True False
print(name.isdigit())  #字符串由数字组成        返回True False
print(name.isalnum())  #字符串由字母和数字组成  返回True False


(14)format() 格式化
第一种:
d = "我叫{},年纪{},爱好{}".format("xue",18,"skssdsd")
print(d)
第二种
e = "我叫{0},年纪{1},爱好{2},我依然喜欢{0}".format("xue",18,"skssdsd")
print(e)
# 第三种
f = "我叫{name},年纪{age},爱好{hobby}".format(name = "xue",age = 18,hobby= "jdsdh")
print(f)



4.for   in
i = "xuensdoahd"
for a in i:
print(a)

 

posted @ 2018-01-23 21:43  树叶有花  阅读(678)  评论(0编辑  收藏  举报