Double陈

day5 for循环和字符串数据类型的基本使用

for循环

  for i in range(10):

    缩进的代码块

问题

打印九九乘法表

for i in range(1,10):
    for j in range(1,i+1):
        print('%s*%s=%s' %(i,j,i*j),end=' ')
    print()

一.可变类型和不可变类型
可变类型:值改变了,id不变证明就是在改变原值,原值是可变类型。
不可变类型:值改变了,id跟着变,证明就是在产生新的值,原值是不可变类型。
二.字符串类型
定义: 在单引号 双引号 三引号
常用操作:
#优先掌握的操作:msg=“hello world”
#1、按索引取值(正向取+反向取) :只能取
print(msg[0]) 取h
#2、切片(顾头不顾尾,步长)
print (msg[0:5])取 hello
print (msg[0:5:2])取 h l o
print (msg[ : ])取hello world
print (msg[0:-5:-1])取dlrow (反向取最后一定要写步长不然默认是1)
#3、长度len
print(len(msg))
#4、成员运算in和not in
print(“xxxx”not in msg )


#5、移除空白strip
msg=“ hello ”
res=msg.strip( )
#6、切分split(有规律的字符串)
msg="egon:11:male"
res=msg.split(":")
#7、循环

需要掌握

#1、strip,lstrip,rstrip
#2、lower,upper
#3、startswith,endswith
#4、format的三种玩法
#5、split,rsplit
#6、join
#7、replace
#8、isdigit
答案
#strip
name='*egon**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*'))

#lower,upper
name='egon'
print(name.lower())
print(name.upper())

#startswith,endswith
name='alex_SB'
print(name.endswith('SB'))
print(name.startswith('alex'))

#format的三种玩法
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {1}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18)

#split
name='root:x:0:0::/root:/bin/bash'
print(name.split(':')) #默认分隔符为空格
name='C:/a/b/c/d.txt' #只想拿到顶级目录
print(name.split('/',1))

name='a|b|c'
print(name.rsplit('|',1)) #从右开始切分

#join
tag=' '
print(tag.join(['egon','say','hello','world'])) #可迭代对象必须都是字符串

#replace
name='alex say :i have one tesla,my name is alex'
print(name.replace('alex','SB',1))

#isdigit:可以判断bytes和unicode类型,是最常用的用于于判断字符是否为"数字"的方法
age=input('>>: ')
print(age.isdigit())


posted on 2021-03-18 08:52  Double陈  阅读(52)  评论(0编辑  收藏  举报

导航