Python基础数据类型

基础数据类型

int:整数,加减乘除,大小比较
float:小数,浮点数
bool:用来做条件判断的,
取值范围只有:True和False
在Python中,所有的非零数字都是True,零是False;所有非空字符串是True,空字符串是False

字符串格式化

#我叫**,我住在**,我今年**,我喜欢做**`
name=input("请输入你的名字:")
address=input("请输入你的住址:")
age=int(input("请输入你的年龄:"))
hobby=input("请输入你的爱好:")
# %s字符串占位 
# %d占位整数
# %f占位小数
s="我叫%s,我住在%s,我今年%d岁,我喜欢做%s" % (name,address,age,hobby)
#还可以这样写
#s1="我叫{},我住在{},我今年{}岁,我喜欢做{}".format(name,address,age,hobby) 
#print(s1)
#f-string
#s2=f"我叫{name},我住在{address},我今年{age}岁,我喜欢做{hobby}"

运行程序截图如图所示:
程序运行结果

索引和切片

索引:按照位置提取元素

s="我叫周杰伦"
#可以采用索引的方式来提取某一个字符(文字符号)
print(s[3])
#程序员都是从0开始数数
print(s[-1])
#负号表示倒数

切片:从一个字符串中提取一部分内容

s="我叫周杰伦,你叫周润发吗?"
print(s[3:6])
#从索引3进行切片,切到6结束,索引的切片拿不到第二个位置的元素
#语法:s[start:end]从start到end进行切片,但是取不到end
#如果start进行切片,则start可以省略,end也可以省略
#如果冒号左右两端有空白,表示开头或者结尾

print(s[-3:-1])#目前还是只能从左往右切片
print(s[-1:-3])#没有结果,这里是坑!!!!
s="我爱你"
#可以给切片添加步长来控制切片的方向
print(s[::-1])
#负号表示从右往左,默认第三个参数都是1
#语法:s[start:end:step] 从start切到end,每step个元素出来一个元素

字符串的常规操作

字符串的操作一般不会对原字符串产生影响,一般是返回一个新的字符串

字符串的大小写转换
s="python"
s1=s.capitalize()#字符串的首字母大写
print(s1)
s="i have a dream!"
s1=s.title()
#所有的单词首字母大写
print(s1)
s="I HAVE A DREAM!"
s1=s.lower()
#把所有字母变成小写字母
print(s1)
s="i have a dream!"
s1=s.upper()
#把所有字母变成大写字母
print(s1)

例子:如何忽略大小写来进行判断

verify_code="xAd1"
uesr_input=input(f"请输入验证码({verify_code}):")
if verify_code.upper()==uesr_input.upper()
   print("验证码正确")
else:
   print("验证码不正确")
字符串的切割与替换
  1. strip():去掉字符串左右两端的空白符(空格,\t,\n)
s="   你  好,  我  叫     " 
s1=s.strip(s)
#去掉字符串左右两端的空格
print(s1)

案例:模拟用户登录

username=input("请输入用户名:").strip()
password=input("请输入密码:").strip()
#防止用户在输入的时候不小心输入空格导致登录失败
if username=="admin"
   if password=="123456"
       print("登陆成功")
   elseprint("登陆失败")
 elseprint("登陆失败")  
  1. replace(old,new):字符串的替换
s="你好啊,我叫赛利亚"
s1=s.replace("赛利亚""周杰伦")
print(s1)
s="i am very happy!"
s1=s.replace(" """)
#去掉所有的空格
print(s1)
  1. split(用什么切割):字符串的切割,用什么切就会损失什么
s="python_java_c_c#_javascript"
s1=s.split("_")#切割之后的结果会放到列表当中
print(s1)

输出结果如下图:
切割字符串示意图

s="python_java_c_c#_javascript"
s1=s.split("_java_")#
print(s1)

运行结果如图所示:
字符串切割

字符串的查找和判断
  1. 查找
s="你好啊,我叫周润发"
s1=s.find("周润发")
#返回如果是-1就是没有该字符串出现
print(s1)
s="你好啊,我叫周润发"
s1=s.index(周润发)
#若没有该字符串则会直接报错
print(s1)
s="你好啊,我叫周杰伦"
print("周杰伦" in s)
#in可以做条件上的判断
print("周杰伦" not in s)
#not in 判断是否不存在
  1. 判断
name=input("请输入你的名字:")
#判断你是否姓张
if name.startswith("张"):
#判断字符串是否以**开头,endswith()判断以**结尾
   print("你姓张")
else:
   print("你不姓张")
money=input("请输入你的钱数")
if money.isdigit():
#判断字符串是否由整数组成,
   money=int(money)
   print("可以")
else:
    print("对不起,您的输入有误") 
字符串的补充和总结
  1. len():内置函数,输出字符串长度
  2. join():和split相对应
lst=['我','是','谁']
#用下划线把上面的字符连接起来
s="_".join(lst)
print(s)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值