python数据类型--数字,布尔值,字符串

本文介绍了Python中的数据类型,包括整型(int,long在Python3中自动转换)、浮点型、复数。还讨论了布尔值的转换,如str到bool,bool到int的转换,并提供了相关示例。此外,详细阐述了字符串的索引、切片操作及常用方法,如capitalize()、swapcase()等。最后给出一个实现整数加法计算器的例题,涉及用户输入内容的处理和计算。
摘要由CSDN通过智能技术生成

数字:
int整型
long长整型:无限大小的整数,整数最后一位是大写的或小写的L
在py3中整数如果过长溢出会自动转换为long型
浮点型:(floating point real values) - 浮点型由整数部分与小数部分组成,
浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
复数(complex numbers): - 复数由实数部分和虚数部分构成,
可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

方法:.bit_length() 表示十进制数转换为二进制数时最少使用的位数。
n = 1
n1 = 3
n2 = 5
n3 = 8
print(n.bit_length())
print(n1.bit_length())
print(n2.bit_length())
print(n3.bit_length())

布尔值:
字符串和布尔值的转换
str—>bool:非空字符串转换为布尔值为True,空字符串为False
s = bool(”)
s1 = bool(‘sdsdsdds’)
print(s, s1)
bool—> str
直接将bool值数字符串化
ps:print(str(1 < 2)) 返回值是字符串:’False’
说明会先进行运算。
布尔值和数字之间的转换
bool—->int
int(True) -> 1
int(bool) -> 0
int—->bool
bool(0) -> False
bool(1) -> True
bool(-1)-> True
bool(1.2) -> True
空列表,空元祖,空字典 -> False
应用:做逻辑判断

字符串:
索引:s[i] 起始为0,顾头不顾尾 i > 0 从左至右;i < 0 从右至左
切片:s[start:end:步长] 步长 > 0 从左至右切;步长 < 0 :从右至左切。
如果没有规定步长,默认从左至右 print(s[::-1]) #逆序字符串

常用方法;终于明白()里是写的是方法的参数,另外学会看源码
*.capitalize() 将首字母大写剩余的小写
.swapcase() 大小写翻转
*.upper()
.lower()

    .title() 每个单词的首字母大写,中间需用特殊字符(例如空格)隔开

    *.center()----> .center(width, fillchar)  fillchar填充字符得是字符串的格式
    返回一个指定宽度 width 居中的字符串,如果 width 小于字符串宽度直接返回字符串,否则使用 fillchar 去填充。



***.count()--->.count(子字符串,start参数,end参数)
    计算子字符串在字符串中出现的次数.


***.find() 
    检测字符串是否包含子字符串,包含,返回匹配的*第一个子字符串*的*索引值*,不包含返回-1 
      ----> .find(substring, start参数 ,end参数)

***.index()和.find()  
    方法一样,不过如果string不包含substring,抛出异常 “substring not found”


     *.endswith() 检测字符串中是否以指定后缀结尾
     ----> .endswith(指定后缀,start参数,end参数)
     Str='Runoob example....wow!!!'
     print (Str.endswith(suffix,20))

     .startswith() 检测字符串中是否以指定内容开头
     ----> .endswith(指定开头,start参数,end参数)  #参数实际是切片,注意位数



     .expandtabs() 将字符串中的tab符号(\t)补全成空格 
     将tab符号前面的字符串位数补全为8,超8的话补全为16,依次类推
     ----> .expandtabs(tabsize) tabsize 是空格数


  **is系列
    isalnum()检测字符串是否由数字或字母组成
    isalpha()检测字符串是否由字母组成
    isdigit()检测字符串是否由数字组成
    可作判断条件

****replace()替换字符串中的子字符串
    ---->.replace(old ,new , max)  *max最大替换次数

*****.split() 
    以指定子字符串分割字符串,返回不含有指 定子字符串的*列表*,默认按空格分割。
     ----> .split(sub, num) *num是分割次数。
     .rsplit() 从右往左。
    a = 'I can do it. Yes, I can '
    print(a.split()) # 不设置参数,默认是按空格分割
    print(a.split('a'))
    print(a.split('I')) #### 以开头对象分割返回空字符串
*****.join()
    -->S.join(iterable)
    以指定字符S连接一个可迭代对象,其元素必须
    是字符串
    可以将列表转换为*字符串*
    同样也可以将元组转换为字符串
    连接字典时连接的是键值
    L = ['s', 'a', 'hello', 'world']
    print('_'.join(L))
    print('*'.join(L))
    print(''.join(L), type(''.join(L)))


*****.strip()消除字符串*前后*空格 ()
     函数参数默认是空格,除此还可以设置参数
     lstrip()消除字符串前面(左面)空格
     rstrip()消除字符串后面(右面)空格




*****.format() 
     根据不同的需求进行操作
    print('name:{}, age:{} ,length:{}'.format('muyi', 11, 180))
    print('name:{0}, age:{1} ,length:{2}'.format('muyi', 11, 180))
    print('name:{姓名}, age:{年龄},length:{身高}'.format(姓名='muyi', 年龄=18, 身高=180))

    for循环是有限循环

例题:
实现一个整数加法计算器:
如:content = input(‘请输入内容:’) #
如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。

sum  = 0
L = content.split('+')
for i in L:
    sum = sum + int(i)
print(sum)

content = input('请输入表达式:')
index = content.find('+')
sum = int(content[0:index]) + int(content[index+1:])   #空格问题,int()函数可以自动去空格
print(sum)

计算用户输入的内容中有几个整数。
如:content = input(‘请输入内容:’) # 如fhdal234slfh98769fjdla
content = input(‘请输入表达式:’)
sum = 0

#两种角度
content = input('请输入:')
count = 0
for i in content:
    if i.isdigit():
        count += 1
print(count)


s = input('请输入:')
count = 0
while s:
    s = s.lstrip('abcdefghijklmnopqrstuvwxyz')
    s = s.lstrip('0123456789')
    count += 1
print(count)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值