day03—python基础(int,str,bool,list)

Posted 小小猎魔人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day03—python基础(int,str,bool,list)相关的知识,希望对你有一定的参考价值。

1数字int。

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

#bit_length() 当十进制用二进制表示时,最少使用的位数
v = 11            11=》1011
data = v.bit_length()
print(data)
输出结果:4

2布尔值bool。

布尔值就两种:True,False。就是反应条件的正确与否。

数字转换成bool:
如果数字是0 结果是False
如果数字是非0 结果是True
True 和1的效率问题: 1的效率高.

bool转int:
int(bool) True => 1
False => 0

字符串转换成bool  bool(str)
空字符串是False. 非空字符串是True
“ ”字符串中有空格,不是非空字符串,输出True

3字符串str。

3.1、字符串的索引与切片。

 索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。

a = ‘ABCDEFGHIJK‘
print(a[0])         A
print(a[3])      D  
print(a[5])      F
print(a[7])      H

    正向 从 0 开始,反向 从-1 开始

切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。

技术分享图片
a = ‘ABCDEFGHIJK‘
print(a[0:3])
print(a[2:5])
print(a[:]) #默认从头到尾 print(a[0:]) #默认到最后 print(a[0:-1]) #-1就是最后一个 print(a[0:5:2]) #加步长
print(a[5:0:-2]) #反向加步长
print(a[0:20]) #如果右边的值. 超过了字符串长度. 切到最后
技术分享图片

3.2、字符串常用方法。

#captalize,swapcase,title
msg=‘eGon say hi‘ print(msg.capitalize()) #首字母大写 Egon say hi print(msg.swapcase()) #大小写翻转 EgON SAY HI print(msg.title()) #每个单词的首字母大写 Egon Say Hi # 内容居中,总长度,空白处填充
a1=‘alex‘ ret2 = a1.center(10,"*") print(ret2) ***alex*** #数字符串中的元素出现的个数。 # ret3 = a1.count("a",0,4) # 可切片 # print(ret3) 1 a2 = "hqw wu" # 前面的补全 # 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度大于等于8个小于16个则补全16个,以此类推每次补全8个。 ret4 = a2.expandtabs() print(ret4) hqw wu a4 = "dkfjdkfasf54" #startswith 判断是否以...开头 #endswith 判断是否以...结尾 # ret4 = a4.endswith(‘jdk‘,3,6) # 可切片 # print(ret4) # 返回的是布尔值 True # ret5 = a4.startswith("kfj",2,4) # print(ret5) False #寻找字符串中的元素是否存在 # ret6 = a4.find("fjdk",1,6) # print(ret6) 2 # 返回的找到的元素的索引,如果找不到返回-1 # ret61 = a4.index("fjdk",4,6) # print(ret61) 2 # 返回的找到的元素的索引,找不到报错。 #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。 # ret9 = ‘title,Tilte,atre,‘.split(‘t‘) # print(ret9) [‘‘, ‘i‘, ‘le,Til‘, ‘e,a‘, ‘re,‘] # ret91 = ‘title,Tilte,atre,‘.split(‘t‘,2) #可选择分割次数 # print(ret91) [‘‘, ‘i‘, ‘le,Tilte,atre,‘]
s = "李嘉诚王健林麻花藤周杰伦"
lst = s.split("李嘉诚王健林麻花藤周杰伦") [‘‘, ‘‘] # 如果原字符串和刀一样全切割.得到的是两个空字符串。开头或者结尾出现刀一样全切割,一定会出现空字符串。
# lst = s.split("马云") [‘李嘉诚王健林麻花藤周杰伦‘] # 如果不存在.得到的是原字符串
# lst = s.split("") empty separator #用空字符串切割,报错 
#format的三种玩法 格式化输出
print("%s很帅, 你信吗?" % "我")                                                    我很帅, 你信吗?
print("{}很帅, {}信吗?, 不信给你{}钱".format("旭哥", "我们", 100)) 旭哥很帅, 我们信吗?, 不信给你100钱
print("{1}很帅, {0}信吗?, 不信给你{2}钱".format("旭哥", "我们", 100))                我们很帅, 旭哥信吗?, 不信给你100钱
print("{person1}很帅, {person2}信吗?, 不信给你{money}钱".format(person1="旭哥", person2="我们", money=100))         旭哥很帅, 我们信吗?, 不信给你100
#strip
name=‘*egon**‘
print(name.strip(‘*‘))        #去掉左右两边的‘*’,  ‘*’不写,默认是空格,strip()  
print(name.lstrip(‘*‘))       #去掉左边的‘*’
print(name.rstrip(‘*‘))       #去掉右边的‘*’

#replace
name=‘alex say :i have one tesla,my name is alex‘
print(name.replace(‘alex‘,‘SB‘,1))         #可选择替换的对象和数量

#is系列
name=‘jinxin123‘
print(name.isalnum()) #判断字符串是否由字母或数字组成,输出bool值
print(name.isalpha()) #判断字符串是否只由字母组成,输出bool值
print(name.isdigit()) #判断字符串是否只由数字组成,输出bool值
print(name.upper()) #变大写
print(name.lower()) #变小写
#判断字符串长度
name=‘jinxin123‘
print(len(name)) 9
技术分享图片
 

   



























以上是关于day03—python基础(int,str,bool,list)的主要内容,如果未能解决你的问题,请参考以下文章

python-fullstack-s13-day03-python基础

day 03

day03

day03 基础数据类型

day03

Python全栈开发课堂笔记_day03