1、列表元祖字典集合
  列表 list = ["a", "b", "c", "d"]
  元祖 tup = (1, 2, 3, 4, 5 )
    1、元组与列表类似,不同之处在于元组的元素不能修改,不允许删除
    2、可以使用list() 和 tuple()方法相互转换
  列表和元祖什么时候使用:当需要使用一组数据且数据不用修改时用元祖
  字典 dict = {key1 : value1, key2 : value2 } ;dict ={}
  集合 set = {'a', 'r', 'b', 'c', 'd'} ;set = set()
    set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等
    1、set1.intersection(set2) #返回两个或更多集合中都包含的元素,即交集
    2、set1.union(set2) #方法返回两个集合的并集

2、切片
  L = ['Adam', 'Lisa', 'Bart', 'Paul']
  print(L[0])     #Adam
  print(L[-1])    #Paul
  print(L[:])      #['Adam', 'Lisa', 'Bart', 'Paul'] #复制

  print(L[:2])       #['Adam', 'Lisa'] 前两个
  print(L[:-1])       #['Adam', 'Lisa','Bart'] 前三个
  print(L[::])     #['Adam', 'Lisa', 'Bart', 'Paul']
  print(L[::2])      #['Adam', 'Bart'] 每隔两个取一个
  print(L[::-1])     #['Paul', 'Bart', 'Lisa', 'Adam'] 逆序
  L[0]="shuzf"    #['shuzf', 'Lisa', 'Bart', 'Paul'] 替换
  del L[0]         #['Lisa', 'Bart', 'Paul'] 删除
  L[:0]="Adam"     #['A', 'd', 'a', 'm', 'Lisa', 'Bart', 'Paul'] #插入

3、choice()函数
  print (random.choice(a)) #随机取值,a可以是列表也可以是字符串

4、字符池
  import string
  string.ascii_letters #字符池a-zA-Z
  string.digits #字符池0-9
  str = string.ascii_letters+string.digits #字符池a-zA-Z0-9
  ran_str = ''."join(random.sample(str, 8)) #在字符池随机取八个连接成字符串
  ran_str.isalpha() #方法检测字符串是否只由字母组成
  ran_str.isdigit() #方法检测字符串是否只由数字组成

5、大小写、分割、删除、替换、连接
  '%02d'%i #以两位输出字符:01,02
  '%.2f'%i #以小数输出字符:1.00,2.00
  str.lower() #转小写
  str.upper() #转大写
  str.split(s) #分割       分割符s,分割次数;默认以空字符分割,返回list
  str.strip(s) #删除       删首尾字符s;默认删除首尾空白符(包括'\n', '\r', '\t', ' ')
  str.replace(olds,news,1) #替换 news替换olds,替换一次:默认所有替换
  str.join(list) #连接 以str连接list
  str.startswith(s, beg=0,end=len(string))#判断str以s开头 startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False

6、过滤
  crazy_str = 'dade142.!0142f[., ]ad' #print("".join(list(new_crazy))),以list(filter())进行输出
  new_crazy = filter(str.isdigit, crazy_str) #只保留数字
  new_crazy = filter(str.islower, crazy_str) #保留小写字母
  new_crazy = filter(str.isupper, crazy_str) #保留大写字母
  new_crazy = filter(str.isalpha, crazy_str) #只保留字母
  new_crazy = filter(str.isalnum, crazy_str) #只保留字母和数字
  new_crazy = filter(lambda i: i in '0123456789.', crazy_str) #保留数字0-9和小数点'.' 则需要自定义函数
  newlist = filter(None,list) #过滤list为空的元素

7、map()、filter()、reduce()函数 与lambda配合使用; 下标地址可进行list(map())、list(filter())进行输出
  from functools import reduce
  f = lambda x,y:x+y
  a = [1,2,3,4,5]
  print(map(f,a))    #<map object at 0x01869970>
  print(filter(f,a))  #<filter object at 0x0185FF10>
  print(reduce(f,a)) #15

8、列表推导式
  [ 表达式 for 变量 in 可迭代对象 ]
  [ 表达式 for 变量 in 可迭代对象 if 筛选条件 ]
  [真的值 if 条件 else 假的值 for 变量 in 可迭代对象 ]
  print([f(x) for x in a])
  print([f(x) for x in a if x%2==1 ])
  print([x-10 if x in [11,12,13] else x for x in a])

9、求和
  print(sum(range(11)))            #1至10求和
  print(sum([i for i in range(11)]))        #1至10求和
  print(reduce(lambda x,y:x+y,range(11)))    #1至10求和
  print(sum([i for i in range(1,101) if i%2==1]))#1至100奇数求和
  print(sum([x for x in range(2, 101) if all([x%y!=0 for y in range(2, x)])])) #1至100质数求和
  range(1,101)[10:90]   #rang(10,91)
  range(1,101,3)      #1至100,每三个取一个(间隔2)

10、re
  re.sub(pattern, repl, string, count=0, flags=0) #re.sub(a,b,s,1) 把s字符串中的a替换成b,次数一次

11、in
  if res not in res_list:
    res_list.append(res)
  if res in res_list:
    print(res)

12、if else
  真c=a,假c=b
  c = a if a > b else b

13、求均值
  import numpy as np
  print(np.mean(range(1,101))) #1至100均值

14、迭代器
  a = iter(range(10))
  print(next(a))

15、yield生成器
  yield就是return 返回一个值,并且记住这个返回的位置,下次迭代就从这个位置后(下一行)开始

16、递归
  在某些条件下函数自己调用自己,不调用自己部分得到结果。如果需要得到所有结果列表:
    1、可以结合yield生成器;
    2、也可以将每次结果保存,当参数传至函数

17、global
  global 设置为全局变量
  local 设置局部变量

18、os
  import os
  print( os.path.basename('/root/runoob.txt') ) # 返回文件名
  print( os.path.dirname('/root/runoob.txt') ) # 返回目录路径
  print( os.path.split('/root/runoob.txt') ) # 分割文件名与路径
  print( os.path.join('root','test','runoob.txt') ) # 将目录和文件名合成一个路径
  print(os.path.realpath(__file__)) #获取当前文件绝对路径

19、eval()
  参数必须是str,当参数为函数名时加()获取返回值
  a=eval('str')()

python-字符、字符串、函数处理的更多相关文章

  1. python(字符串函数)

    一.字符串函数 1.首字母大小写 capitalize() title() name = "xinfangshuo" print (name.capitalize()) print ...

  2. Python学习-字符串函数操作3

    字符串函数操作 isprintable():判断一个字符串中所有字符是否都是可打印字符的. 与isspace()函数很相似 如果字符串中的所有字符都是可打印的字符或字符串为空返回 True,否则返回 ...

  3. Python学习-字符串函数操作2

    字符串函数操作 find( sub, start=None, end=None):从左到右开始查找目标子序列,找到了结束查找返回下标值,没找到返回 -1 sub:需要查找的字符串 start=None ...

  4. Python的字符串函数

    今天用了将近一天的时间去学习Python字符串函数 上午学了17个,下午学了23个(共计40) 详细内容请见菜鸟教程--Python3字符串--Python的字符串内建函数

  5. python pandas字符串函数详解(转)

     pandas字符串函数详解(转)——原文连接见文章末尾 在使用pandas框架的DataFrame的过程中,如果需要处理一些字符串的特性,例如判断某列是否包含一些关键字,某列的字符长度是否小于3等等 ...

  6. python笔记-字符串函数总结

    字符串函数: chr() 数字转ASCII chr(96)="a" ord() ASCII转数字 ord("a")=96 isspace() 判断是否为空格 s ...

  7. 【python】字符串函数

    1.String模块中的常量: string.digits:数字0~9 string.letters:所有字母(大小写) string.lowercase:所有小写字母 string.printabl ...

  8. Python学习-字符串函数操作1

    字符串的函数操作 capitalize():可以将字符串首字母变为大写 返回值:首字符大写后的新字符串 str = "liu" print(str.capitalize()); / ...

  9. Python之字符串函数str()

    str()方法使Python将非字符串值表示为字符串: age = 23 message = "Happy" + str(age) +"rd Birthday"

  10. python之字符串函数

    1.  endswith()  startswith() # 以什么什么结尾 # 以什么什么开始 test = "alex" v = test.endswith('ex') v = ...

随机推荐

  1. Gym 100917M Matrix, The

    题目链接: http://codeforces.com/gym/100917/problem/M --------------------------------------------------- ...

  2. yum python mysql

    lrwxrwxrwx root root Jun : pyspark -> /etc/alternatives/pyspark lrwxrwxrwx root root Jul : python ...

  3. CentOS7.X安装FastDFS-5.10

    安装准备 yum install \ vim \ git \ gcc \ gcc-c++ \ wget \ make \ libtool \ automake \ autoconf \ -y \ 安装 ...

  4. jmeter之线程组循环次数

    有时候压测需要配置并发的持续时间,这个可以在jmeter中线程组页面进行配置 1.jmeter的循环次数2种使用场景 2.持续时间功能介绍 3.持续时间的使用场景 1.jmeter的循环次数2种使用模 ...

  5. springboot jpa 级联操作及测试问题 (@Transactional与@Test)

    前言:测试springboot版本     :springBootVersion = '2.0.5.RELEASE' 一 :搬运@Transactional B. 如果加了事务,必须做好开发环境测试( ...

  6. 鸟哥私房菜学习——centos 7_安装

    下面是我安装时遇到问题后搜索找到的可行办法: 准备工具: 8G左右U盘; 最新版UltraISO; CentOS7光盘镜像; CentOS7的镜像文件,可以在网易的开源镜像站或者阿里云的开源镜像站下载 ...

  7. 单击EasyUI的datagrid行时不选中

    单击EasyUI的datagrid行时不选中,行背景色不变,点击选择框checkbox时选中该行 核心代码: $("#msgList").datagrid({        url ...

  8. xmake 描述语法和作用域详解

    xmake的工程描述文件xmake.lua虽然基于lua语法,但是为了使得更加方便简洁得编写项目构建逻辑,xmake对其进行了一层封装,使得编写xmake.lua不会像些makefile那样繁琐 基本 ...

  9. 严重: StandardWrapper.Throwable org.springframework.beans.factory.BeanCreationException: Error creating bean with name

    HTTP Status 500 - Servlet.init() for servlet mybatis threw exception type Exception report message S ...

  10. Springboot War包部署下nacos无法注册问题

    目录 1. @EnableDiscoveryClient的使用 2. EnableDiscoveryClientImportSelector类的作用 3.AutoServiceRegistration ...