美文网首页
python 基础(一)

python 基础(一)

作者: pigdaqiang | 来源:发表于2020-01-27 20:32 被阅读0次

    python数字
    python2中
    整形 int 1
    浮点形 float 2.1
    长整形long

    >>> 3/2
    1.5
    >>> 5//2    #取整
    2
    >>> 5%2     #取余
    1
    

    python基本运算 +,-,*,/,//,%
    python2中整形除以整形结果还是整形 3/2 输出 1

    python字符串
    字符串是一个用引号包围的,有序的,不可修改的序列。
    字符串的定义:
    ‘’ 单引号
    “”双引号

    >>> print(type("1"))
    <class 'str'>
    >>> print(type('1'))
    <class 'str'>
    >>> print("1")
    1
    >>> print('1')
    1
    

    注意引号要成对出现,单引号成对出现,双引号成对出现。"i'am a shuaige"这样可以正常闭合
    '''三单引号
    """三双引号 #这两个注释符可以执行换行,隔行注释

    >>> '''
    ... hello word
    ... '''
    '\nhello word\n'
    >>> """
    ... hello word
    ... hello
    ... """
    '\nhello word\nhello\n'
    

    str()类型函数

    >>> "1"
    '1'
    >>> str(1)
    '1'
    

    由于python对脚本当中没有进行任何处理的字符串不进行编译,所以我们常用三引号作为常注释,多行注释
    当一个字符串没有任何处理的出现在脚本、函数、类下的第一行,那么这个时候这个字符串被称为文档字符串

    字符串当中的特殊字符
    特殊字符就是在字符串中起到特殊含义的字符
    (在行尾时) 续行符 也可以当作转义符
    \ 反斜杠符号
    ' 单引号
    " 双引号
    \a 响铃
    \b 退格(Backspace)
    \e 转义
    \000 空
    \n 换行
    \v 纵向制表符
    \t 横向制表符
    \r 回车
    \f 换页

    >>> print("a\nb")
    a
    b
    >>> print("a\\nb")
    a\nb
    >>> "a\
    ... b       无换行符时出错
      File "<stdin>", line 2
        b
        ^
    SyntaxError: EOL while scanning string literal
    >>> 'a\
    ... b'
    'ab'
    

    字符串格式化的操作:
    在字符串当中以指定的格式进行占位,然后我们将指定的数据传入字符串
    %s 字符串占位
    %d 数字占位符
    %f 浮点数占位符
    %.2f 控制浮点数字占位符

    >>> "%s is %d years"%("while",18)
    'while is 18 years'
    >>> "i am  %d years old"%18
    'i am  18 years old'
    >>> "%s is 19 years old"%he
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'he' is not defined
    
    >>> "%s is 19 years old"%'he'
    'he is 19 years old'
    >>> '%s id %.2f m'%('a',1.88)
    'a id 1.88 m'
    

    字符串的索引(index)
    在python当中所有有序的序列都是有索引概念的
    索引在我们初学的时候,我们可以理解为字符的下标
    'while'
    索引依次为0,1,2,3,4

    >>> 'while'[1]      取第二个元素
    'h'
    >>> 'while'[-1]     取倒数第一个元素
    'e'
    >>> 'while'[:]      取所有的元素
    'while'
    截取: 不包含结尾
    >>> 'while'[1:3]    截取第二三个元素
    'hi'
    步长截取
    >>> 'while'[::]
    'while'
    >>> 'while'[::2]    隔一个元素截取
    'wie'
    >>> 'while'[::-1]
    'elihw'
    >>> 'while'[1:3:-1]
    ''
    >>> 'while'[1:4:-1]
    ''
    >>> 'while'[3:1:-1]
    'li'
    

    字符串的方法:
    字符串的修饰
    Center
    让字符串在指定的长度居中,如果不能居中左短右长,可以指定填充内容,默认以空格填充
    ljust
    让字符串在指定的长度左齐,如果不能居中左短右长,可以指定填充内容,默认以空格填充
    rjust
    让字符串在指定的长度右齐,如果不能居中左短右长,可以指定填充内容,默认以空格填充
    zfill 将字符串填充到指定的长度,不足地方用0从左开始补充
    strip 默认去除两边的空格,去除内容可以指定
    rstrip 默认去除右边的空格,去除内容可以指定
    lstrip 默认去除左边的空格,去除内容可以指定

    >>> 'shuai'.center(10)  指定长度的居中,不能低于字符串的长度
    '  shuai   '
    >>> 'shuai'.center(4)
    'shuai'
    >>> 'shuai'.center(10,"x")
    'xxshuaixxx'
    >>> 'shuai'.ljust(10,'x')
    'shuaixxxxx'
    >>> 'shuai'.rjust(10,'x')
    'xxxxxshuai'
    >>> 'shuai'.rjust(1,'x')    #指定长度中,长度中要大于字符串本身的长度
    'shuai'
    >>> '30'.zfill(10)
    '0000000030'
    >>> ' shuai '.strip()
    'shuai'
    >>> 'shuai '.rstrip()
    'shuai'
    >>> ' shuai'.lstrip()
    'shuai'
    >>> 'xxxxshuaixxxxx'.strip('x')
    'shuai'
    >>> 'xxxxshuai'.lstrip('x')
    'shuai'
    >>> 'shuai'.rstrip('x')
    'shuai' 
    

    字符串的查找
    Count 计数功能,返回自定字符在字符串当中的个数
    Find 查找,返回从左第一个指定字符的索引,找不到返回-1
    rfind 查找,返回从右第一个指定字符的索引,找不到返回-1
    index 查找,返回从左第一个指定字符的索引,找不到报错
    rindex 查找,返回从右第一个指定字符的索引,找不到报错
    字符串的替换
    replace 从左往右替换指定的元素,可以指定替换的个数,默认是全部替换

    >>> 'shuai'.count("s")
    1
    >>> 'shuai'.find('s')
    0
    >>> 'shuai'.find('dd')
    -1
    >>> 'shuai'.rfind('s')  从右往左找,索引位置还是从左往右的
    0
    >>> 'shuai'.rfind('i')
    4
    >>> 'shuai'.index('s')
    0
    >>> 'shuai'.index('ss')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: substring not found
    >>> 'shuai'.rindex('s')
    0
    >>> 'shuai'.rindex('ss')
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    ValueError: substring not found
    >>> 'shuai'.replace('i','ige')
    'shuaige'
    >>> 'shuaii'.replace('i','ige',1)
    'shuaigei'
    >>> 'shuaii'.replace('i','ige',2)   替换的是指定的个数,从左往右
    'shuaigeige'
    

    字符串的变形:
    upper 将字符串中的所有字母转换为大写
    lower 将字符串中的所有字母转换为小写
    swapcase 将字符串中的所有字母大小写互换
    title 将字符串中的单词首字母大写,单词以非字母划分
    capitalize 只有字符串的首字母大写
    expandtabs 修改\t的长度
    \t = tab键,是制表符,就是你每次使用tab,下 一次光标的位置在下一栏的起始位置,比
    如一般是一个tab四个空格位,如果你已经输入了两个字母,那么按下tab,光标的位置就来
    到了字母后面两个空格的位置,输出效果上"ab\tcd"和"ab cd"是一样的,所以这个expand
    tab也是这样,到上一个tab位或者行首一共数8个字符位,不够补齐空格

    >>> print('a\tb')
    a   b
    >>> print('ab\tb')
    ab  b
            
    >>> 'shuai'.upper()
    'SHUAI'
    >>> 'shuai'.upper('s')
    Traceback (most recent call last):
     File "<pyshell#3>", line 1, in <module>
      'shuai'.upper('s')
    TypeError: upper() takes no arguments (1 given)
            
    >>> 'SHUAI'.lower()
    'shuai'
    >>> 'shuai'.title()
    'Shuai'
    >>> 'shuai ge'.title()
    'Shuai Ge'
            
    >>> 'shuai ge'.capitalize()
    'Shuai ge'
    >>> 'shuaiGE'.swapcase()
    'SHUAIge'
            
    >>> 'a\tb'.expandtabs(2)
    'a b'
    >>> 'a\tb'.expandtabs(3)
    'a  b'
    >>> 'a\tb'.expandtabs(1)
    'a b'
    

    字符串的判断:
    isalnum 判断字符串是否完全由字母和数字组成
    isalpha 判断字符串是否完全由字母组成
    isdigit 判断字符串是否完全由数字组成
    isupper 判断字符串中的字母是否完全大写
    islower 判断字符串中的字母是否完全小写
    istitle 判断字符串是否满足title格式
    isspace 判断字符串是否完全由空格组成
    startswith 判断字符串的开头字符,也可以截取判断
    endswith 判断字符串的结尾字符,也可以截取判断

    >>> 'shuai123'.isalnum()
    True
    >>> 'shuai123'.isalpha()
    False
    >>> 'shuai123'.isdigit()
    False
    >>> 'shuai123'.isupper()
    False
    >>> 'shuai123_'.isalnum()
    False
    >>> 'shuai123'.isalpha()
    False
    >>> 'shai12_'.isdigit()
    False
    >>> 'SHUAI123_'.isupper()
    True
    >>> 'shuaige123_'.islower()
    True
    >>> 'shuaige123_'.istitle()
    False
    >>> '   '.isspace()
    True
    >>> '\t\n'.isspace()
    True
    >>> print('\t\n')
        
    >>> 'shuai'.startswith('s')
    True
    >>> 'shuai'.endswith('i')
    True
    >>> 'shuai'.startswith('g')
    False
    >>> 'shuai'.startswith('s',0)
    True
    >>> 'shuaiu'.startswith('u',2,5)
    True
    >>> 'shuaishuai'.endseith('s','u',0,2)
    Traceback (most recent call last):
     File "<pyshell#36>", line 1, in <module>
        'shuaishuai'.endseith('s','u',0,2)
    AttributeError: 'str' object has no attribute 'endseith'
    >>> 'shuaishuai'.startswith('s',0,9)
    True
    >>> 'shuaige'.endswith('u',0,2)
    False
    >>> 'shuaige'.endswith('u',0,3)
    True
    

    字符串的切分
    splitlines 以行切分字符,可以指定是否保留行标志布尔值
    split 从左开始切分字符串,可以指定切分次数和对象
    rsplit 从右开始切分字符串,可以指定切分次数和对象
    字符串的拼接
    join
    将指定的字符串插入到后面的序列的每两个元素之间,进行拼接,形成一个新的字符串
    + 将两个字符串拼接起来
    * 将指定的字符串进行重复

    相关文章

      网友评论

          本文标题:python 基础(一)

          本文链接:https://www.haomeiwen.com/subject/jiiethtx.html