7.python3实用编程技巧进阶(二)
2.1.如何拆分含有多种分隔符的字符串
#2.1.如何拆分含有多种分隔符的字符串 s = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz' #第一种方法
def my__split(s, seps):
res = [s]
for sep in seps:
t = []
list(map(lambda ss: t.extend(ss.split(sep)), res))
res = t
return res s1 = my__split(s, ',;|\t')
print(s1) #['ab', 'cd', 'efg', 'hi', 'jkl', 'mn', 'opq', 'rst', 'uvw', 'xyz'] #第二种方式:使用re.split (推荐)
import re s2 = re.split('[,;|\t]+', s)
print(s2) #['ab', 'cd', 'efg', 'hi', 'jkl', 'mn', 'opq', 'rst', 'uvw', 'xyz']
2.2.如何调整字符串中文本的格式
#2.2.如何调整字符串中文本的格式 import re #调整时间显示的格式
s = "2019-08-15 23:23:12" s1 = re.sub(r'(\d{4})-(\d{2})-(\d{2})',r'\2/\3/\1',s) print(s1) # 08/15/2019 23:23:12
2.3如何将多个小字符串拼接成一个大的字符串
# 2.3如何将多个小字符串拼接成一个大的字符串.. l = ["<11>","<22>","<33>","<44>","<55>","<66>","<77>"] #第一种方法,空间和时间都比较浪费
s = ''
for x in l:
s += x
print(s) #<11><22><33><44><55><66><77> #第二种方法
s2 = ''.join(l)
print(s2) #<11><22><33><44><55><66><77>
2.4如何对字符串进行左, 右, 居中对齐
In [17]: s = 'abc' In [18]: s.ljust(10)
Out[18]: 'abc ' In [19]: s.ljust(10,'*')
Out[19]: 'abc*******' In [20]: s.rjust(10)
Out[20]: ' abc' In [21]: s.rjust(10,'*')
Out[21]: '*******abc' In [22]: s.center(10)
Out[22]: ' abc ' In [23]: s.center(10,'*')
Out[23]: '***abc****' In [24]:
把字典以左对齐的形式打印出来
#2.4如何对字符串进行左, 右, 居中对齐
d = {
"zhang_derek": "",
'name':'',
'address':'',
'age':''
}
w = max(map(len,d.keys())) #计算所有key中字符最长的是多少
print(w) #
for k, v in d.items():
print(k.ljust(w), ":", v)
结果

2.5如何去掉字符串中不需要的字符
(1)用strip()函数,只能取出两端的,中间的许可以去掉
In [30]: s = ' zhang_derek ' In [31]: s.strip()
Out[31]: 'zhang_derek' In [32]: s.lstrip()
Out[32]: 'zhang_derek ' In [33]: s.rstrip()
Out[33]: ' zhang_derek' In [34]:
加参数
In [43]: s1 = ' -=+zhang_derek-=-+ ' In [44]: s1.strip()
Out[44]: '-=+zhang_derek-=-+' In [45]: s1.strip('-=+ ')
Out[45]: 'zhang_derek' In [46]:
(2)删除固定位置,用切片,去掉下面的冒号
In [46]: s2 = 'abc:123' In [47]: s2[:3] + s2[4:]
Out[47]: 'abc123' In [48]:
(3)replace
In [48]: s3 = ' abc 123 ' In [49]: s3.strip()
Out[49]: 'abc 123' In [50]: s3.replace(' ','')
Out[50]: 'abc123' In [51]:
(4)正则表达式re.sub()
In [57]: s4 = ' \t abc \t 123 \n '
In [58]: import re
In [59]: re.sub('[ \t\n]+', '', s4)
Out[59]: 'abc123'
In [60]:
7.python3实用编程技巧进阶(二)的更多相关文章
- Python3实用编程技巧进阶 ☝☝☝
Python3实用编程技巧进阶 ☝☝☝ 1.1.如何在列表中根据条件筛选数据 # 1.1.如何在列表中根据条件筛选数据 data = [-1, 2, 3, -4, 5] #筛选出data列表中大于等 ...
- Python3实用编程技巧进阶
Python3实用编程技巧进阶 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时候可以 ...
- Python3实用编程技巧进阶✍✍✍
Python3实用编程技巧进阶 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时候可以 ...
- 6.python3实用编程技巧进阶(一)
1.1.如何在列表中根据条件筛选数据 # 1.1.如何在列表中根据条件筛选数据 data = [-1, 2, 3, -4, 5] #筛选出data列表中大于等于零的数据 #第一种方法,不推荐 res1 ...
- 8.python3实用编程技巧进阶(三)
3.1.如何实现可迭代对象和迭代器对象 #3.1 如何实现可迭代对象和迭代器对象 import requests from collections.abc import Iterable,Iterat ...
- 9.python3实用编程技巧进阶(四)
4.1.如何读写csv数据 爬取豆瓣top250书籍 import requests import json import csv from bs4 import BeautifulSoup book ...
- 10.python3实用编程技巧进阶(五)
5.1.如何派生内置不可变类型并修其改实例化行为 修改实例化行为 # 5.1.如何派生内置不可变类型并修其改实例化行为 #继承内置tuple, 并实现__new__,在其中修改实例化行为 class ...
- EF – 2.EF数据查询基础(上)查询数据的实用编程技巧
目录 5.4.1 查询符合条件的单条记录 EF使用SingleOrDefault()和Find()两个方法查询符合条件的单条记录. 5.4.2 Entity Framework中的内部数据缓存 DbS ...
- EF – 2.EF数据查询基础(上)查询数据的实用编程技巧
目录 5.4.1 查询符合条件的单条记录 EF使用SingleOrDefault()和Find()两个方法查询符合条件的单条记录. 5.4.2 Entity Framework中的内部数据缓存 DbS ...
随机推荐
- Node.js操作Mysql的简单示例
API的封装:封装为系统可用的工具,分为线上和线上的数据库. 使用:让API直接操作数据库,不再使用假数据. DEMO代码: const mysql = require('mysql'); // 创建 ...
- [转]How to enable macros in Excel 2016, 2013, and 2010
本文转自:https://www.ablebits.com/office-addins-blog/2014/07/22/enable-macros-excel/#always-run-macros T ...
- Druid-代码段-1-4
所属文章:池化技术(一)Druid是如何管理数据库连接的? 本代码段对应流程1.3,连接可用性测试: //数据库连接可用性测试 protected boolean testConnectionInte ...
- 最小化MarkdownPad 2安装体积(win10)
一.原因 MarkdownPad2在Win10当中可能无法正常运行,右侧预览界面会出现错误"This view has crashed!"查阅官网FAQ得知大多数情况下安装Awes ...
- mybatis foreach方法遍历对象
<delete id="deleteAppUserByIds"> delete from app_userinfo where <foreach i ...
- oracle中utl_raw
RAW,类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节.LONG RAW,类似于LONG,作为数据库列最大存储2G字节的数据,作为变 ...
- 用OC基于数组实现循环队列
一.简言 使用数组实现循环队列时,始终会有一个空余的位置预留着,作为一个判决队列已满的条件(当然也可以采用其他方式).在前面已经用C++介绍了基本的算法,可以去回顾一下https://www.cnbl ...
- workbook数据相关操作
访问单个单元格 c = ws['A4'] #返回单元格A4,如果单元格不存在,则会自动创建 ws['A4'] = 4 #为单元格A4赋值为4 d = ws.cell(row=4, column=2, ...
- Ajax和跨域请求
Ajax 一.概述 Web 程序最初的目的就是将信息(数据)放到公共的服务器,让所有网络用户都可以通过浏览器访问. 在次之前,我们可以通过以下几种方式让浏览器发出对服务端的请求,获取服务端的数据: 地 ...
- vscode相关设置
一.如何设置vs每次点击文件打开新的窗口: 1.打开设置 2.搜索:"workbench.editor.enablePreview" 3.设置"workbench.edi ...