5.Python基础二

1.基础数据类型

int数字类型111 222+-*/等
str 字符串类型 'shuai' 存储少量数据,+*int 切片,其他操作方法
bool 布尔值类型 True False 判断真假
list 列表 [12,True,'shuai',[123]] 存储大量数据
tuple 元组 (12,True,'shuai',[123]) 存储大量数据,里边元素无法改变
dict 词典 {'name':'阿帅','age':'18'} 存储大量的关联性数据,查询速度非常快
set 交集,并集,差集    


除2取余,倒排序2.十进制转换二进制

十进制二进制
42 00101010
63 00111111

3.二进制转换十进制

2的幂相加

二进制十进制
00000111 7 print(1*2**0+1*2**1+1*2**2)
10001101 141

4.数据类型的转换

非零即True,0为False

4.1bool----->int
print(int(True))
4.2int----->bool
print(bool(0))
4.3str----->int

s1必须是数字

s1 = 10
int (s1)
print(s1,type(s1))
4.4int----->str
i = 100 str(i)
4.5str----->bool

非空即True

i = 'shuai'
print(bool(i))
4.6bool----->str无意义
print(str(True))

5.对字符串进行索引,切片出来的数据都是字符串

5.1按照索引取值

s2 = s[index]

从左至右的顺讯,下标,索引。

s = 'www.fushuaizhang.com'
s2 = s[0]
print(s2)
s3 = s[-1]
5.2按照切片取值

s4 = s[start_index:end_index+1]

顾头不顾腚打印的是0-2

s = 'www.fushuaizhang.com'
s4 = s[0:3]或s4 = s[:3]
print(s4)
5.3切片步长

s5 = s[start_index:end_index+1:步长]

s = 'www.fushuaizhang.com'
s5 = s[:6:2]
print(s5)

倒叙取值

s6 = s[start_index:end_index+1:倒叙步长]

print(s[::-1])
s6 = s[-1:-6:-1]
print(s6)
5.4练习题

 

s ='123a4b5c'

s1
= s[:3]
print(s1)
s2
= s[3:6]
print(s2)
s3
= s[::2]
print(s3)
s4
= s[1👎2]
print(s4)
s5
= s[-1]
print(s5)
s6
= s[-3::-2]
print(s6)

 

6.字符串常用操作方法

6.1upper,lower
s = 'ZhangFuShuai'
​
s1 = s.upper()   #字符串全变大写,汉字不变
print(s1)
​
s2 = s.lower()   #字符串全变小写,汉字不变
print(s2)
小练习:用于用户验证码不区分大小写
username = input('请输入您的用户名:')
password = input('请输入您的密码:')
code = 'qWeR'
your_code = input('请输入验证码:不区分大小写')
​
if  your_code.upper() == code.upper():
    if username == 'zhang' and password == '123':
        print('登录成功')
    else:
        print('用户名密码错误!')
else:
    print('验证码错误!')
6.2startswith,endswith
s = 'zhangfushuai'print(s.startswith('z'))    #判断是以什么开始,返回结果为bool值
print(s.endswith('i'))      #判断是以什么结束,返回结果为bool值
6.3replace
msg = '你长得真好看,你可真棒!'
​
msg1 = msg.replace('','')   #默认不加次数,是替换所有
print(msg1)
msg2 = msg.replace('','',1) #后边加次数
print(msg2)
6.4strip
s = '\n shuai \t'           #\n代表 换行, \t代表tab键
print(s)
s1 = s.strip()              #去除空白格,空格,换行,回车
print(s1)  
#########了解###################
#去除指定的字符
s = 'qwe帅啊ewq'
s1 = s.strip('qwe')
print(s1)
6.5split (str----->list)
s = '小明 小李 小菜'
l = s.split()                  #默认是按照空格分隔,返回一个列表
print(l)
['小明', '小李', '小菜']
##############################################
s = '小王:小李:小雅'             #指定分隔符进行分隔,返回一个列表
l = s.split(':')
print(l)
########################################
s = '小王:小李:小雅'              
l = s.split(':',1)              #指定分隔符和步长进行分隔,返回一个列表
print(l)
6.6join
s = ['小明','小李','小菜']
​
l = ':'.join(s)          #将列表转换成字符串,前提是列表里的元素必须是str类型
print(l,type(l))
小明:小李:小菜 <class 'str'>
6.7count
s = 'aaaaaaassssdsdasdasdasdasda'
print(s.count('a'))         #统计字符出现的次数
12
6.8format:格式化输出
########第一种用法###########
msg = '我叫{},今年{},性别{}'.format('',25,'')
print(msg)
我叫帅,今年25,性别男
########第二种用法###########
msg = '我叫{0},今年{1},性别{2},行不更名{0}'.format('',25,'')      #根据索引定位
print(msg)
我叫帅,今年25,性别男,行不更名帅
########第三种用法###########
msg = '我叫{name},今年{age},性别{sex},行不更名:{name}'.format(name='',age=25,sex='')  #根据键值对
print(msg)
我叫帅,今年25,性别男,行不更名:帅
6.9is系列
name='shuai123'
print(name.isalnum()) #字符串由字母或数字组成   True
print(name.isalpha()) #字符串只由字母组成       False
print(name.isdecimal()) #字符串只由十进制组成   False
##################################
s = input('请输入您的金额:')
​
if s.isdecimal():
    print(input(s))
else:
    print('您输入的有误,请重新输入。')

 

 

posted @ 2021-10-28 15:36  张福帅  阅读(86)  评论(0)    收藏  举报