03-Python数字与字符串的方法

数字

  - int 

    将字符串转换为数字

a = "123"
print(type(a),a)

b = int(a)
print(type(b),b)

    int默认将字符传内部的数字当作10进制,如不是10进制需要base参数定义,如:

num = "f"
v = int(num, base=16)
print(v)

# 结果 15

  - .bit_lenght()
    当前数字的二进制,至少用n位表示。

age = '10001'
a = int(age,base=2)
print(a,a.bit_length())

# 结果 17 5

 

 

字符串

  - str

    将内容转换成字符串

age = 17
print(type(str(age)))

# 结果 <class 'str'>

  - .capitalize()    将首字母大写

  - .upper()       将首字母大写

  - .casefold()     所有变小写,可转换的更多

  - .lower()       所有变小写

  - .center()      左右填充

# 第一个参数左右填充一共多少字符。 第二个参数是空白位置填充,默认为空格。
print(name.center(20,'-'))

  - .count()       统计某字符串出现的次数,可以指定起始位置和结束位置(索引值)

  - .endswith()    查找是否以某字符串结尾,返回(True/False)

  - .expandtabs()   

    此方法把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 8。

    从头开始数,数到第一个\t正好为8个空格,不足则补空格,如果还有\t,接着从第一个\t数到第二个\t仍然为8个空格,以此类推直到最后一个\t结束。

    举例:

#!/usr/bin/env python
#-*- encoding:utf-8 -*-
S = "username\temail\tpassword\nlaiying\[email protected]\t123\nlaiying\[email protected]\t123\nlaiying\[email protected]\t123"
v = S.expandtabs(20)
print(v)

'''
    结果
username            email               password
laiying             [email protected]          123
laiying             [email protected]          123
laiying             [email protected]          123
'''

    注:如果字符串长度超出定义长度,则排版可能会出现问题

  - .find()       查找字符串所在的索引位置,只找第一个位置,可以指定起止位置,如查找不到值为 -1 。

  - .format()       格式化,将字符串中的占位符替换为指定的值

  - .format_map()    格式化,将字符串中的占位符替换为指定的值

name = 'i am {name}, {accept}'
print(name.format(name='roy',accept='haha!'))

name = 'i am {0}, {1}'
print(name.format('roy','haha!'))

name = 'i am {name}, {accept}'
print(name.format_map({'name':'roy','accept':'haha!'}))


# 结果 i am roy, haha!

  - .index()      查找字符串所在的索引位置,如果找不到会报错。 可以被.find()代替。

  - .isalnum()     判断字符串内只包含数字或字母。返回(True / False)

  - .

未完

猜你喜欢

转载自www.cnblogs.com/imroy/p/10371193.html