zoukankan      html  css  js  c++  java
  • 基础数据类型操作(一)——整型、字符串

    type函数:用以显示对象数据类型

    数字(在python2中区分int类型和long类型;而python3中只有int类型)

    字符串str

    # 整型
    # int(对象, base=进制) #字符转成对应进制数
    a = '0011'
    print(int(a, base=2)) #结果是3,先转换成2进制,在转换成10进制输出
    print(int(a, base=8)) #结果是9,先转换成8进制,在转换成10进制输出
    print(int(a, base=10)) #结果是11,先转换成10进制,在转换成10进制输出
    
    # bit_length() #显示数值以2进制计算的宽度
    a = 11 #二进制为1011长度为4
    print(a.bit_length()) #结果为4
    
    #字符串
    # capitalize() #除首字母外其他均改为小写
    s = 'aLexAlex'
    t = s.capitalize()
    print(t)
    # upper() #均转换成大写字母
    print(s.upper())
    # lower()均转换成小写
    print(s.lower())
    # center(长度, 填充字符) #总字符长度,如果够长,则输出整个字符串即可;若原始字符达不到长度,则使用填充符两端填充
    print(s.center(7, '*'))
    # count(要查找的字符串,起始位置,终点位置)
    print(s.count('le'))
    # endswith('ex') #以字符串结尾,返回布尔型
    print(s.endswith('ex'))
    # find(待查找字符串,起始位置,终点位置) 返回待查找的字符串在整个字符串中的位置,如果找不到返回-1
    print(s.find('le', 4, 7))
    # 使用index()也能够查找到位置,但是如果找不到会报错
    print(s.index('le'))
    
    
    #格式化 将字符串中的占位符替换为指定的值
    #使用变量格式化
    # text = 'I am {name}, age {a}'
    # print(text)
    # print(text.format(name='lwj', a='20'))
    # 使用序列格式化
    # text = 'I am {0}, age {1}'
    # print(text)
    # print(text.format('lwj', 20))
    # 使用字典格式化
    text = 'I am {name}, age {a}'
    print(text)
    print(text.format_map( {'name':'lwj', 'a':'20'} ))
    
    
    # 1.python官方定义中的字母:大家默认为英文字母+汉字即可
    # 2.python官方定义中的数字:大家默认为阿拉伯数字+带圈的数字即可
    
    # isalnum() 至少有一个字符且所有字符都是字母数字,那么返回结果就是True;否则含特殊字符,就返回False
    t = '三a+_@'
    print(s.isalnum())
    # isalpha() 至少有一个字符且所有字符都是字母,那么返回结果就是True;否则,就返回False
    t = '三a'
    print(t.isalpha())
    # isdigit() 至少有一个字符且所有字符都是数字,那么返回结果就是True;否则,就返回False
    t = '三a'
    print(t.isdigit())
    
    # expandtabs(分割的字符串长度) # 吧字符串按照长度分割,	制表符补充空格=长度-已填充的字符数
    t = 'name	age	addr
    lwj	17	安徽
    lwj	17	安徽
    lwj	17	安徽
    '
    print(t.expandtabs(10))
    
    s = 'abc123	de	fghijk	mn'
    print(s.expandtabs(5)) #此时abc123超过5后面补充制表符,de不满足补充3空格,fghijk满足直接分割,mn在最后不需要补充
    
    # isidentifier() # 满足数字、字母、下划线,即使是关键词,且不以数字开头即位True
    t = ['_abc1', 'a_bc1', '1_abc', 'def', 'a+b']
    for i in t:
        print(i.isidentifier()) # 结果分别是T,T,F,T,F
    
    # s.isprintable() #如果存在不可显示的字符例如换行、制表符等,则为False
    s = 'abc	cde'
    print(s.isprintable())
    
    # title() #吧每个单词的首字母大写,变成标题的格式 istitle()则判断是否每个单词的首字母为大写
    s = 'I am title'
    print(s.title())
    print(s.istitle())
    
    # 将字符串以自定分隔符分割拼接
    s = '今天天气不错'
    print('_'.join(s))
    
    # 固定长度左右中对齐,以*补齐
    s = 'lwj'
    print(s.center(5, '*'))
    print(s.ljust(5, '*'))
    print(s.rjust(5, '*'))
    
    # 移除左右的所有空格,可传参strip('a'),则移除左右的字符a
    s ='  AB C12 '
    print(s.strip())
    print(s.lstrip())
    print(s.rstrip())
    # 移除指定字符例如 lstrip(abcdef)
    
    # 对应位置替换 例如abcde对应12345吧字符中含有的abcde对应替换为12345
    m = str.maketrans('abcde','12345')
    s = 'acdgefh'
    print(s.translate(m))   #会把字符串s中的abcde对应替换为12345,结果为134g5fh
    
    # partition('c') # 以制定分隔符分割字符串,并且吧分割符也当作一列输出,且只分割一次
    s ='abcdcbabbcd'
    print(s.partition('cd'))
    
    # split('cd') #以指定字符为分隔符,分割全部字符串,不展示分割符列。可传参,分割几次
    print(s.split('c',2))
    
    # swapcase() # 转换大小写
    s = 'happy new yeaR'
    print(s.swapcase())
    
    # 字符串切片
    s = 'abcdefg'
    print(s[2]) #取第三个字符
    print(s[-1]) #取最后一个字符
    print(s[2:3]) #取第三个字符,2-3不含3
    
    #len()获取字符串、列表的长度
    li = [11, 22, 'abcd']
    s = 'abcdefg'
    i = 0
    while i < len(s):
        print(s[i])
        i += 1
    
    # for 循环
    for i in li:
        print(i)
    
    # 替换
    s = 'abcdabcdabcd'
    print(s.replace('b', 'e'))
    
    #range生成范围参数分别是,起始值,结尾值(不含结尾值),步长
    n = range(1, 11, 2)
    for i in n:
        print(i)
    
    #小练习,根据用户输入,逐行输出用户输入的单个字符
    text = input('请输入:')
    for i in range(0, len(text)):
        print(i+1, text[i])
  • 相关阅读:
    EntityFramework 启用迁移 EnableMigrations 报异常 "No context type was found in the assembly"
    JAVA 访问FTP服务器示例(2)
    NuGet Package Manager 更新错误解决办法
    JAVA 访问FTP服务器示例(1)
    RemoteAttribute 的使用问题
    诡异的 javascript 变量
    javascript apply用法
    Babun 中文乱码
    GSM呼叫过程
    转站博客园
  • 原文地址:https://www.cnblogs.com/wjlv/p/10806141.html
Copyright © 2011-2022 走看看