python字符串

Python序列类型之字符串详解

匿名 (未验证) 提交于 2019-12-02 22:51:30
字符串(str) 关于引号:Python中有3种引号。分为单引号、双引号、三引号。python中单引号’'和双引号""没有区别,如a=’abc’,a=’’abc’’。三引号就是连敲三次单引号,不表示字符串,它用来多行注释,并且多行注释没结束(没出现第二个三引号)可以随便换行。若引号中还要加引号需要交叉使用,即外面单引号里面双引号,外面双引号里面单引号。 一对单引号或双引号加上引号内的字符就是字符串,字符串中间不可以换行,想换行显示在换行处敲一个\n。 >>> a='abcd' >>> b="efgh" >>> type(a) <class 'str'> >>> type(b) <class 'str'> >>> c='ab"c"de' >>> print(c) ab"c"de >>> d='abc\ndefgh\nijk' >>> print(d) abc defgh ijk 字符串的显示:解释器显示字符串时保留字符串原来的样子,如果print字符串显示的是客户看得到的效果,两端没引号。 >>> a='Hello world!' >>> a 'Hello world!' >>> print(a) Hello world! str字符串和repr字符串(原始字符串) 我们平时写代码和打印的都是str字符串。str字符串写的时候要加引号,print str字符串时结果都是两端无引号

python_f-string格式化字符串文字

匿名 (未验证) 提交于 2019-12-02 22:51:30
一、简介 f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法。 f-string在形式上是以 f 或 F 修饰符 引领的字符串(f'xxx' 或 F'xxx'),以 大括号 {} 标明被替换的字段; f-string在本质上并不是字符串常量,而是一个 在运行时运算求值的表达式 。 二、使用 1、f-string解析变量 首先尝试一下str,int类型的变量。 name = "江辰" age = 18 print(f"姓名:{name},年龄:{age}") 运行结果: 姓名:江辰,年龄:18 跟str.format()类似,但是使用起来更便捷 疑问:可以解析除了str,int这种类型的变量,f-string可以解析字典,元组,列表,集合吗? 尝试一下字典: one_dict = {"name": "江辰", "age": 18, "hobby": ["running", "singing"]} print(f"姓名:{one_dict['name']},爱好:{one_dict['hobby']}") 运行结果: 姓名:江辰,爱好:['running', 'singing'] 其他类型试一下,也可以。 知识点:f-string可以解析任意类型的变量 2 .f-string是在 运行时

Python---内存中的读写 StringIO

匿名 (未验证) 提交于 2019-12-02 22:51:30
StringIO在内存中读写字符串 from io import StringIO sio = StringIO() sio.write(str) 功能:将字符串写入sio对象中 sio.write("hello") sio.getvalue() 功能:获取写入的内容 print(sio.getvalue()) sio2.read() 功能:一次性读取所有的sio对象中的内容 sio2 = StringIO("hello jerry!!!") print(sio2.read()) 内存中读取二进制字符串: 方法1: from io import BytesIO bio = BytesIO() 编码 解码 >>>China 方法2: from io import BytesIO bio2 = BytesIO("China".encode("utf-8")) print(bio2.read().decode("utf-8")) >>>China 文章来源: https://blog.csdn.net/lonely2018/article/details/93072631

python-数字数据类型-整数类型-浮点数类型-数据类型间的转换

匿名 (未验证) 提交于 2019-12-02 22:51:30
数字数据类型 分类 整数类型,例如1,88,99 浮点数类型,即小数,例如,3.14,1.78 查看数据类型 res = type(数字) print(res) int,整数 float,小数,也就是浮点数 数据类的转换 小数变整数 res = int(1.78) print(res) 整数变小数 res = float(5) print(res) print(type(res)) 字符串变数字 int(字符串) -----> 整数 注意,字符串只能是整数的字符串,比如 “78” 不能够是小数字符串,比如"78.8"是不可以处理的 heigh = "78" res = int(heigh) print(res) float(字符串) -----> 小数 注意,字符串只能是整数的字符串,比如 “78” 不能够是小数字符串,比如"78.8"是不可以处理的 heigh = "1.78" res = float(heigh) print(res) print(type(res)) 小结 int函数 int(数据) 该数据可以是小数,3.14 也可以是字符串的整数,"3" float函数 float(数据) 数据可以是数字型类的字符串,"78" "78.8" 也可以是一个整数 不论是使用int函数或者float函数 参数一定要是数字型的参数 文章来源: https://blog.csdn

python-字符串及编码

匿名 (未验证) 提交于 2019-12-02 22:51:30
python-字符串及编码 关于字符编码,请移步另一篇文章 因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。Python提供了ord()和chr()函数,可以把字母和对应的数字相互转换: >>> ord('A') 65 >>> chr(65) 'A' >>> ord('我') Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: ord() expected a character, but string of length 2 found 只能是单个字符 Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如: >>> print(u'中文') 中文 >>> u'中' u'\u4e2d' 写u'中'和u'\u4e2d'是一样的,\u后面是十六进制的Unicode码。因此,u'A'和u'\u0041'也是一样的。 两种字符串如何相互转换?字符串'xxx'虽然是ASCII编码,但也可以看成是UTF-8编码,而u'xxx'则只能是Unicode编码。 把u'xxx'转换为UTF-8编码的'xxx'用encode(

Python : 两个字符串是否是变位词

匿名 (未验证) 提交于 2019-12-02 22:51:30
class Anagram: “”" @:param s1: The first string @:param s2: The second string @:return true or false “”" def Solution1(s1,s2): alist = list(s2) pos1 = 0 stillOK = True while pos1 < len(s1) and stillOK: pos2 = 0 found = False while pos2 < len(alist) and not found: if s1[pos1] == alist[pos2]: found = True else: pos2 = pos2 + 1 if found: alist[pos2] = None else: stillOK = False pos1 = pos1 + 1 return stillOK print(Solution1('abcd','dcba')) def Solution2(s1,s2): alist1 = list(s1) alist2 = list(s2) alist1.sort() alist2.sort() pos = 0 matches = True while pos < len(s1) and matches: if alist1[pos] ==

字符串翻转(python)

匿名 (未验证) 提交于 2019-12-02 22:51:30
方法一:通过索引的方法 strA = "abcdegfgijlk" strA[::-1] ‘kljigfgedcba’ 方法二:借组列表进行翻转 #coding=utf-8 strA = raw_input("请输入需要翻转的字符串:") order = [] for i in strA: order.append(i) order.reverse() #将列表反转 print ''.join(order) #将list转换成字符串 文章来源: https://blog.csdn.net/disasters/article/details/91953942

python中正则表达式的练习

匿名 (未验证) 提交于 2019-12-02 22:51:30
https://www.cnblogs.com/think-and-do/p/6414135.html python中正则表达式的练习 . 匹配除换行符以外的任意字符 ^ 匹配字符串的开始 $ 匹配字符串的结束 [] 用来匹配一个指定的字符类别 ? 对于前一个字符字符重复0次到1次 * 对于前一个字符重复0次到无穷次 {} 对于前一个字符重复m次 {m,n} 对前一个字符重复为m到n次 \d 匹配数字,相当于[0-9] \D 匹配任何非数字字符,相当于[^0-9] \s 匹配任意的空白符,相当于[ fv] \S 匹配任何非空白字符,相当于[^ fv] \w 匹配任何字母数字字符,相当于[a-zA-Z0-9_] \W 匹配任何非字母数字字符,相当于[^a-zA-Z0-9_] \b 匹配单词的开始或结束 一、python中的正则表达式 1.1 re.search() re.search在字符串内查找模式匹配,只找到第一个匹配然后返回,如果字符串没有匹配,则返回None. help(re.search) search(pattern, string, flags=0) 第一个参数:规则 第二个参数:要匹配的字符串 第三个参数:标志位,用于控制正则表达式的匹配规则 实例: >>> name="Hello,My name is kuangl,nice to meet you..." >>>

Python3 实例(六)

匿名 (未验证) 提交于 2019-12-02 22:51:08
Python 判断字符串是否存在子字符串 给定一个字符串,然后判断指定的子字符串是否存在于改字符串中。 实例 def check(string, sub_str): if (string.find(sub_str) == -1): print(“不存在!”) else: print(“存在!”) string = “ www.runoob.com ” sub_str =“runoob” check(string, sub_str) 执行以上代码输出结果为: 存在! Python 判断字符串长度 给定一个字符串,然后判断改字符串的长度。 实例 1:使用内置方法 len() str = “runoob” print(len(str)) 执行以上代码输出结果为: 6 实例 2:使用循环计算 def findLen(str): counter = 0 while str[counter:]: counter += 1 returncounter str = “runoob” print(findLen(str)) 执行以上代码输出结果为: 6 Python 使用正则表达式提取字符串中的 URL 给定一个字符串,里面包含 URL 地址,需要我们使用正则表达式来获取字符串的 URL。 实例 import re def Find(string): # findall()

python字符串知识点

匿名 (未验证) 提交于 2019-12-02 22:51:08
python的string的内置函数 函数名 解释 capitalize() 把字符串的第一个字符改为大写 casefold() 把整个字符串的所有字符改为小写 center(width) 将字符串居中,并使用空格填充至长度 width 的新字符串 count(sub[, start[, end]]) 返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,可选。 encode(encoding=‘utf-8’, errors=‘strict’) 以 encoding 指定的编码格式对字符串进行编码。 endswith(sub[, start[, end]]) 检查字符串是否以 sub 子字符串结束,如果是返回 True,否则返回 False。start 和 end 参数表示范围,可选。 expandtabs([tabsize=8]) 把字符串中的 tab 符号(\t)转换为空格,如不指定参数,默认的空格数是 tabsize=8。 find(sub[, start[, end]]) 检测 sub 是否包含在字符串中,如果有则返回索引值,否则返回 -1,start 和 end 参数表示范围,可选。 index(sub[, start[, end]]) 跟 find 方法一样,不过如果 sub 不在 string 中会产生一个异常。 isalnum()