Python03

一.python基本数据类型

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

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

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

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

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

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

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

二.整数(int)

常见操作就是加减乘除 //**

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值转换成相应的"值"

四.字符串.在python中用',",''',"""引起来的内容称为字符串.

1.切片和索引

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

s1="python最牛B"

print(s1[0]) p

print(s1[1]) y

print(s1[2]) t

print(s1[3]) h

print(s1[4]) o

print(s1[5]) n

print(s1[8]) B

print(s1[-2]) 牛

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

语法:str[start:end]

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

s2="python最牛B"

print(s2[0:3]) 结果:pyt

print(s2[6:9]) 结果:最牛B

print(s2[-1:-5]) 没有结果

print(s2[-5:]) 结果:on最牛B

print(s2[:]) 结果:python最牛

3.跳着截取

跳着取步长

print(s2[1:5:2]) 结果:yh

print(s2[:5:2]) 结果:pto

print(s2[4::2]) 结果;o最B

print(s2[-1:-5]) 结果:什么都没有

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

str[start🔚step] start: 起始位置 end: 结束位置 step:步长

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

1.大小写转来转去

s2.capitalize()

print(s1) 输出没有发现并没有任何的变化,因为这里的字符串本身是不会发生改变的.需要我们重新获取的的.

ret1 = s1.capitalize()

print(ret1)

大小写的转换

ret=s1.lower()#全部转换成小写

print(ret)

ret=s1.upper()#全部转换成大写

print(ret)

应用,校验用户输入的验证码是否合法

verify_code="abDe"

user_verify_code=input("请输入验证码:")

if verify_code.upper()==user_verify_code.upper():

print("验证成功")

else:

print("验证失败")

s2 = "БBß"

print(s2)

print(s2.lower())

print(s2.casefold())

结果:БBß

бbß

бbss

每个被特殊字符隔开的字母首字母大写

s3 = "alex eggon,taibai*yinwang_麻花藤"

ret = s3.title()

print(ret) #Alex Eggon,Taibai*Yinwang_麻花藤

中文也算是特殊字符

s4="alex老男孩wusir"

print(s4.title()) #Alex老男孩Wusir

2.切来切去:居中

s5="周杰伦"

ret=(s5.center(10,"*"))

print(ret) 周杰伦*

更改tab的长度

s6="alex wusir\teggon"

print(s6) alex wusir eggon

print(s6.expandtabs()) alex wusir eggon

可以改变\t的长度,默认长度更改为八

去空格 去掉的是左右两端的空格

s7=" alex wusir haha"

ret=s7.strip()

print(ret) alex wusir haha

ret=s7.lstrip() #去掉左边空格,右边的同理

print(ret) alex wusir haha

字符串的替换

字符串串替换 s8 = "sylar_alex_taibai_wusir_eggon"

ret = s8.replace('alex', '金角大王') #把alex替换成金角大王

print(s8)

sylar_alex_taibai_wusir_eggon 切记,字符串是不可变对象. 所有操作都 是产生新字符串返回

print(ret)

sylar_金角大王_taibai_wusir_eggon

ret = s8.replace('i', 'SB', 2)# 把i替换成SB, 替换2个

print(ret) # sylar_alex_taSBbaSB_wusir_eggon

字符串串切割 s9 = "alex,wusir,sylar,taibai,eggon"

lst = s9.split(",")# 字符串切割, 根据,进行切割

print(lst) s10 = """诗人 学者 感叹号 渣渣"""

print(s10.split("\n")) # 用\n切割

s11 = "银王哈哈银王呵呵银王吼吼银王" lst = s11.split("银王")

['', '哈哈', '呵呵', '吼吼', ''] # 如果切割符在左右两端. 那么一 定会出现空字符串.深坑请留意

print(lst)

3. 格式化输出

格式化输出 s12 = "我叫%s, 今年%d岁了, 我喜欢%s" % ('sylar', 18, '周杰伦')

之前的写法 print(s12) s12 = "我叫{}, 今年{}岁了, 我喜欢{}".format("周杰伦", 28, "周润发")

按位置格式化print(s12) s12 = "我叫{0}, 今年{2}岁了, 我喜欢{1}".format("周杰伦", "周润发", 28)

#指定位置 print(s12) s12 = "我叫{name}, 今年{age}岁了, 我喜欢{singer}".format(name="周杰伦", singer="周润 发", age=28)

指定关键字 print(s12)

4.查找

s13 = "我叫sylar, 我喜欢python, java, c等编程语言."

ret1 = s13.startswith("sylar") # 判断是否以sylar开头

print(ret1)

4.查找

#ret3 = s13.endswith("语言") # 是否以'语言'结尾 print(ret3) ret4 = s13.endswith("语言.") # 是否以'语言.'结尾 print(ret4)

ret7 = s13.count("a") # 查找"a"出现的次数 print(ret7)

ret5 = s13.find("sylar") # 查找'sylar'出现的位置 print(ret5)

ret6 = s13.find("tory") # 查找'tory'的位置, 如果没有返回-1 print(ret6)

ret7 = s13.find("a", 8, 22) # 切片找 print(ret7)

ret8 = s13.index("sylar") # 求索引位置. 注意. 如果找不到索引. 程序会报错 print(ret8)

  1. 条件判断

条件判断 s14 = "123.16" s15 = "abc" s16 = "_abc!@" # 是否由字母和数字组成

6. 计算字符串的长度

s18 = "我是你的眼, 我也是a" ret = len(s18) # 计算字符串的长度 print(ret)

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

7. 迭代 我们可以使用for循环来便利(获取)字符串中的每一个字符

语法: for 变量 in 可迭代对象:

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

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)

posted on 2018-09-07 16:04  向往未来666  阅读(132)  评论(0编辑  收藏  举报