码迷,mamicode.com
首页 > 编程语言 > 详细

python的字符串、列表、字典和函数

时间:2017-12-16 18:41:48      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:strong   ali   blog   example   items   字符串   操作   mes   pen   

一、字符串

  • 在python中字符串无需通过像php中的explode或者javascript中的split进行分解即可完成切片,可以直接通过下标获取字符串中的每一个字符,下标从0开始,如果从厚望签署,下标从-1开始
str = ‘abcde‘
print(str[0])   #结果为:a
print(str[2])   #结果为:c
  • 可以通过len()函数获取字符串的长度

  • 切片:str[起始位置:结束位置:步长]

  • 如果想要取字符串中的几个字符(切片),可以通过在方括号内添加冒号实线,冒号前为开始的小标,冒号后为结束的下标,截取的是冒号前开始到冒号后之间的字符,去尾不掐头

str = ‘abcde‘
print(str[1:3])     #结果为:bc
print(str[2:3])     #结果为:c
print(str[1:0])     #结果为:bcde  冒号后为零,视为取到最后一个
  • 加上第二个冒号后,第二个冒号后的数字相当于步长,即下标加几
str = ‘abcdeABCDE‘
print(str[1:8:2])       #结果为:bdAC
print(str[-1:0:-1])     #结果为:EDCBAedcb
print(str[-1::-1])      #结果为:EDCBAedcba
print(str[::-1])        #结果为:EDCBAedcba
print(str[::1])         #结果为:abcedABCED
  • 字符串常见操作:
  • find():从左向右查找字符串在目标字符串中第一次出现的位置,找不到返回-1。

    str = ‘hello world!‘
    print(str.find(‘o‘))    #结果为:4
  • rfind():与find相反,从右向左找。

  • index():作用与find相同的,不同的是,如果找不到index会抛出一个异常。

    • rindex():同理。

    • count():返回查找字符串在目标字符串中出现的次数,不存在返回0。

    • replace(‘目标字符串‘, ‘要替换的字符串‘, 替换几次)

    • split():同javascript里的split函数,如果括号内什么都不写,默认以空格为目标切割(很好用)

    • join():作用同javascript里的join函数,但形式不同。

    a = [‘aaa‘, ‘bbb‘, ‘ccc‘]
    b = ‘#‘
    print(b.join(a))            #结果为:aaa#bbb#ccc
    • capitalize():把字符串第一个字符大写

    • title():把字符串的每个单词的首字母大写

    • startswith():检查字符串是否以目标字符串开头

    • endswith():与startswith相反

    • lower():把字符串中所有大写字符小写

    • upper():与lower相反

    • ljust()、rjust()、center():在括号内填写的数字长度内,靠左、靠右、居中。

    • lstrip()、rstrip()、strip():同javascript里的trim

    • partition():用字符串把目标字符串以该字符串为中心,分为左中右三部分,返回一个元祖。

      str = ‘hello world‘
      print(str.partition(‘o‘))   #结果为:(‘hell‘, ‘o‘, ‘ world‘)
    • rpartition():作用同partition,从右向左取第一个。

    • splitliness():按换行符进行分割。

    • isalpha():判断目标字符串是不是字母。

    • isdigit():判断目标是不是数字。

    • isalnum():判断目标是不是既有字母又有数字。

    • isspace():判断目标是不是空格

二、列表

  • 形式:
names = [‘张三‘, ‘李四‘, ‘王五‘]
  • 列表的增加:

  • append("要添加的内容")
  • insert("位置", "要添加的内容")

  • 合并列表:

  • 直接用+号进行合并

  • 用extend()函数

    names1 = [‘张三‘, ‘李四‘, "王五"]
    names2 = [‘赵六‘, ‘吴七‘]
    names3 = names1 + names2
    print(names3)                   #结果为:[‘张三‘, ‘李四‘, ‘王五‘, ‘赵六‘, ‘吴七‘]
    names1.extend(names2)
    print(names1)                   #结果为:[‘张三‘, ‘李四‘, ‘王五‘, ‘赵六‘, ‘吴七‘]
  • 列表的删除:
  • pop():弹出列表中的最后一个
  • remove("内容"):删除列表中第一个目标内容
  • del 列表名[下标]

  • 列表的查找:
  • "要查找的内容" in 列表名
  • "要查找的内容" not in 列表名

  • 列表的遍历:

for temp in 列表名:
    print(temp)
else:
    print(‘end‘)    # for循环加上else,即为在for循环执行完成后,执行else部分

三、字典

  • 形式:dic = {键:值, 键:值…},相当于PHP中的关联式数组,表现形式上与json对象相当
  • 字典的删除 del 字典名[‘键名‘]
  • 用get获取字典里的数据,当对应内容不存在时,不会报错:字典名.get(‘键名‘)
  • 字典的函数:
  • len(dic名):获取字典的键值对个数。
  • dic.keys():返回字典中所有的键。
  • dic.values():返回字典中所有的值。
  • dic.items():将字典转化为元祖。

四、元祖

  • (11,22,33)功能与列表相同,不同之处在于元祖在定义后无法修改。

五、函数

  • 不定长函数(元祖):

    def example(a, b, *args):
        print(a)
        print(b)
        print(args)
    
    example(1, 2, 3, 4, 5, 6, 7, 8)    #结果为:1 2 (3, 4, 5, 6, 7)
  • 不定长参数(字典):

    def test(a, b, c = 33, *args, **kwargs):
        print(a)
        print(b)
        print(c)
        print(args)
        print(kwargs)
    
    test(11, 22, 33, task = 99, done = 89)    #结果为:11 22 33 () {‘task‘: 99, ‘done‘: 89}

python的字符串、列表、字典和函数

标签:strong   ali   blog   example   items   字符串   操作   mes   pen   

原文地址:http://www.cnblogs.com/peilanluo/p/8047112.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!