python字符串

python正则表达式统计字符串的个数

我与影子孤独终老i 提交于 2020-02-12 18:50:20
目的:通过python将pubmed下载的摘要txt文档,统计出其中的PMID数目,是否和文献总篇数一致,一致的话,就可以利用PMID的regex pattern进行分割字符串为单篇摘要文献。 import re fname = '2020-01-14_endometriosis_2020-01-01_UTF8.txt' with open(fname, "r", encoding = 'utf-8') as f: abstracts = f.read() str = abstracts iList= re.findall(r"PMID: \d+ ",str) print(len(iList)) # output: 6049,符合文档中文献的总篇数 iList= re.findall(r"PMID: \d+",str) # regex pattern中少一个空格 print(len(iList)) # output: 6050,结果比文档中文献总篇数多了一篇 致谢: python2-正则表达式统计字符串中数字的个数 来源: https://www.cnblogs.com/songbiao/p/12299991.html

python字符串

点点圈 提交于 2020-02-12 04:41:36
字符串内置函数 ord ( 'A' ) 65 chr ( 88 ) 'X' s1 = 'ABCD' s1 . encode ( 'ASCII' ) b 'ABCD' s2 = '你好啊' s2 . encode ( 'UTF-8' ) b '\xe4\xbd\xa0\xe5\xa5\xbd\xe5\x95\x8a' s2 . encode ( 'UTF-16' ) b '\xff\xfe`O}YJU' b1 = b '\xe4\xbd\xa0\xe5\xa5\xbd\xe5\x95\x8a' b1 . decode ( 'UTF-8' ) '你好啊' s1 . encode ( ) #不指定编码形式,默认是utf-8 b 'ABCD' s2 '你好啊' s2 . encode ( ) b '\xe4\xbd\xa0\xe5\xa5\xbd\xe5\x95\x8a' # 文件编码 open ( 'data.txt' , 'w' , enconding = 'utf8' ) . write ( '你好啊' ) bytes str bytearray 类型转换: bytes bytes ( 'abc' , 'ASCII' ) b 'abc' bytes ( '你好' , 'utf8' ) b '\xe4\xbd\xa0\xe5\xa5\xbd' bytes ( [ 88 , 99 ,

编码 解码 python

不想你离开。 提交于 2020-02-12 04:09:27
之前一直对python文件中编码解码糊里糊涂,今天看到一篇文章,觉得把我讲的有点明白了。写个心得吧。 1、编码解码是怎么一回事? Python 里面的编码和解码也就是 unicode 和 str 这两种形式的相互转化。 编码是 unicode -> str,相反的,解码就是 str -> unicode。 str形式,也就是字符串形式都是以一定的编码格式存在的,常见的编码格式有utf-8、ASCII、gb2312等等。 str1.decode(‘gb2312’),表示将gb2312编码的字符串str1解码成unicode。 str2.encode(‘utf-8’),表示将unicode字符串str2转换成用utf-8格式编码的字符串。 不同编码格式的字符串之间相互转换编码格式的话,都要先解码成unicode,再编码成其他编码格式的字符串。就拿上面的str1来说,将str1转成utf-8编码的字符串,需要这么做: str1.decode(‘gb2312’).encode(‘utf-8’)。 2、如何在python文件中指定编码、解码格式呢 我们在编写python脚本的时候,通常在#! /usr/bin/env python下面一行指定该py文件的默认编码格式。比如# coding=utf-8,表示该py文件中的字符串都是以utf-8格式编码的。 而sys

python与我的第五天 奥利給

旧时模样 提交于 2020-02-12 02:22:10
字符串 1字符串是 最常用的数据类型,我们可以使用引号(’ 或 " )来创建字符串。 2字符串当中常用的函数; (1) 取字符串长度 len(str) str为要获取长度的字符串 (2) 字符串出现次数 count(string, [start], [end]) 返回字符串中string出现的次数,可以指定范围,不写范围默认从头到尾。 (3) 去除头尾字符 strip: 用来去除头尾字符、空白符(包括\n、\r、\t、’ ‘,即:换行、回车、制表符、空格) lstrip:用来去除开头字符、空白符(包括\n、\r、\t、’ ‘,即:换行、回车、制表符、空格) rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、’ ',即:换行、回车、制表符、空格) 注意:这些函数都只会删除头和尾的字符,中间的不会删除。 用法分别为: string.strip([chars]) string.lstrip([chars]) string.rstrip([chars]) 注意:它返回的是去除头尾字符(或空白符)的string,string本身不会发生改变。 (4) 字符串大小写转换 upper 全部转换为大写 lower 全部转换为小写 title 转换为标题(每个单词首字母大写) capitalize 首字母大写 swapcase 大写变小写,小写变大写 (5) 字符串判断 islower

字符编码(copy from linhaifeng)

孤人 提交于 2020-02-12 00:29:09
一 计算机基础知识 二 文本编辑器存取文件的原理(nodepad++,pycharm,word) #1、打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的,断电后数据丢失 #2、要想永久保存,需要点击保存按钮:编辑器把内存的数据刷到了硬盘上。 #3、在我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都只是在编写一堆字符而已。 三 python解释器执行py文件的原理 ,例如python test.py #第一阶段:python解释器启动,此时就相当于启动了一个文本编辑器 #第二阶段:python解释器相当于文本编辑器,去打开test.py文件,从硬盘上将test.py的文件内容读入到内存中(小复习:pyhon的解释性,决定了解释器只关心文件内容,不关心文件后缀名) #第三阶段:python解释器解释执行刚刚加载到内存中test.py的代码( ps:在该阶段,即真正执行代码时,才会识别python的语法,执行文件内代码,当执行到name="egon"时,会开辟内存空间存放字符串"egon") 四 总结python解释器与文件本编辑的异同 #1、相同点:python解释器是解释执行文件内容的,因而python解释器具备读py文件的功能,这一点与文本编辑器一样 #2、不同点:文本编辑器将文件内容读入内存后,是为了显示或者编辑

Python入门(一)

泄露秘密 提交于 2020-02-09 15:16:38
写在开头: A:python的交互式环境 B:使用Notepad++编写python程序,保存为.py文件 1,Python中的数据类型: 整数、浮点数、字符串、布尔值(True、False)、空值(None) None不能理解为0,因为0是有意义的,而None是一个特殊的空值。 此外,Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型 2,print语句 语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出: 3,注释 4,变量 在Python程序中,变量是用一个变量名表示,变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头; 在Python中,等号“=”是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如: 这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,赋值语句如下(// 表示注释): 和静态语言相比,动态语言更灵活,就是这个原因。 最后,理解变量在计算机内存中的表示也非常重要。当我们写: a = 'ABC' 时,Python解释器干了两件事情:1. 在内存中创建了一个 'ABC' 的字符串;2. 在内存中创建了一个名为 a 的变量,并把它指向 'ABC'; 5,定义字符串

Python字符串内建函数_下

偶尔善良 提交于 2020-02-08 22:20:30
Python字符串内建函数: 1.join(str) : 使用调用的字符串对 str 进行分割,返回值为字符串类型 # join(str) : # 使用调用的字符串对 str 进行分割。 strs = "Hello" strs_two = ' '.join(strs) print(strs_two) # H e l l o print(','.join(strs)) # H,e,l,l,o 2.len(string): 返回字符串的长度 # len(string): # 返回字符串的长度 strs = 'happy' print(len(strs)) # 5 3.ljust(width[,fillchar]): 之前的是 center 函数,也可以进行填充。 字符串左对齐,使用 fillchar 填充 width 的剩余部分。 # ljust(width[,fillchar]): # 字符串左对齐,使用 fillchar 填充 width 的剩余部分。 strs = 'Hello' print(strs.ljust(20,'-')) # Hello--------------- # fillchar 默认为空 print(strs.ljust(20)) # Hello 4.lower( ):注:使用了 lower 函数后,原来的字符串不变。

Python字符串格式化

放肆的年华 提交于 2020-02-08 16:40:08
Python字符串格式化: 字符串中符号:   %c :单个字符   %s :字符串   %d :整数   %u :无符号整数   %o :无符号八进制数   %x :无符号十六进制数   %X :无符号十六进制数(大写)   %f :浮点数,可指定小数点后的精度   %e :对浮点数使用科学计数法,可指定小数点后的精度。%E 与 %e 作用相同   %g :%f 和 %e 的简写,%G 与 %g 作用相同 注:%o 为八进制(oct)、%x 为十六进制(hex)。 # %c 只能输出单个字符 a = 'a' print("%c"%(a)) # a # %s 字符串 strs = 'hello' print("%s"%(strs)) # hello # %d 整数 num = 123 print("%d"%(num)) # 123 num = -123 print("%d"%(num)) # -123 # %u 无符号整数 num = 123 print("%u"%(num)) # 123 num = -123 print("%u"%(num)) # -123 # %o 八进制数 num = 11 print("%o"%(num)) # 13 1*8**1 + 3*8**0 = 11 print(oct(11)) # 0o13 # %x 十六进制数 num = 18 print("

大数据萌新的Python学习之路(一)

↘锁芯ラ 提交于 2020-02-08 15:08:22
笔记开始简介   从2018年9月份正式进入大学的时代,大数据和人工智能的崛起让我选择了计算机专业学习数据科学与大数据技术专业,接触的第一门语言就是C语言,后来因为同学推荐的原因进入了学校的人工智能研究协会,开始了正式学习Python的旅程,C语言+Python一起学习让我感受到了Python的简洁,优美的魅力并且让我无法自拔,C语言我并没有特别深入的学习,学校也没有安排相关的课程,而Python是第四学期的课程,第二第三学期学了Java,但是和Python相比确实也是繁琐了不少,Java的应用确实是十分的广泛,但是Python的各种各样的第三方库让Python近乎无所不能,同时也在数据分析,数据可视化等方面应用十分广泛,其实从2018年开始我就想过写博客,但是一直没有动笔,这次新型冠状病毒的原因宅在家里实在是无聊,于是我就开始整理自己的学习笔记,希望看到的人有错误可以指正给我,谢谢。(一些内容源自网课,书籍) 笔记内容: 一、Python的发展 1.Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。Python的创始人为荷兰人吉多·范罗苏姆 (Guido van Rossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣

Python字符串运算符

穿精又带淫゛_ 提交于 2020-02-08 13:05:22
Python字符串运算符:   + :连接左右两端的字符串。   * :重复输出字符串。   [ ] :通过索引获取字符串中的值。   [start:stop:step]:开始,结束位置的后一个位置,步长。   in :判断左端的字符是否在右面的序列中。   not in:判断左端的字符是否不在右面的序列中。   r/R :在字符串开头使用,使转义字符失效。 # 字符串使用 + 号 strs = "hello " + "world." print(strs) # hello world. # 字符串使用 * 号 strs = 'abc ' # 无论数字在哪一端都可以 print(3*strs) # abc abc abc print(strs * 3) # abc abc abc # 使用索引下标 strs = "hello world." print(strs[4]) # o print(strs[7]) # o # 切片操作,左闭右开原则 strs = "hello world." # 将字符串倒序输出 print(strs[::-1]) # .dlrow olleh print(strs[6:11:]) # world strs = "ABCDEFG" print("D" in strs) # True print("L" in strs) # False print("D"