찾다
백엔드 개발파이썬 튜토리얼Python의 문자열 설명 예
Python의 문자열 설명 예Sep 25, 2017 am 11:25 AM
characterpythonstring

아래 편집기에서 Python의 문자열(예제 설명)에 대한 기사를 가져올 수 있습니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 에디터로 구경하러 가세요

1. python string

String은 Python에서 가장 일반적으로 사용되는 데이터 유형입니다. 따옴표(' 또는 ")를 사용하여 문자열을 만들 수 있습니다. l

Python은 단일 문자 유형을 지원하지 않으며, 단일 문자도 Python에서 문자열로 사용됩니다.


>>> var1 = 'hello python' #定义字符串
>>> print(var1[0]) #切片截取,从0开始,不包括截取尾数
h
>>> print(var1[0:5])
hello
>>> print(var1[-6:])
python
>>> var2 = var1[0:6]+'world' #截取字符并拼接赋值给新变量
>>> print(var2)
hello world

2. Python 이스케이프 문자

  : 줄 끝에서 줄 연속 문자

\ : 백슬래시 이스케이프, 출력 ''

' : 작은따옴표 이스케이프

" : 큰따옴표 이스케이프

b : 백스페이스(백스페이스)

n :라인 피드

v :세로 탭 문자

t :가로 탭 문자

r : 캐리지 리턴

f :페이지 피드

3. python 문자열 연산자

( +) 접합, (*) 반복, ([]) 인덱스, ([:]) 슬라이싱, (in) 멤버 판단, (not in) 비멤버 판단, (r/R) 요소 출력 문자열


>>> var1 = 'hello'
>>> var2 = 'python'
>>> print(var1+var2) #拼接字符串
hellopython
>>> print(var1*3) #重复输出字符串
hellohellohello
>>> print(var1[0]) #索引字符串
h
>>> print(var1[3:]) #索引切片
lo
>>> 'e' in var1 #判断字符串是否在变量中
True
>>> 'p' not in var1 #判断字符串是否不在变量中
True
>>> print("he\tllo \n") 
he llo 
>>> print(r"he\tllo \n") #原始输出字符串,也就是原始输出转义字符
he\tllo \n

4 . 형식화된 문자열

Python은 형식화된 문자열의 출력을 지원합니다. 여기에는 매우 복잡한 표현식이 포함될 수 있지만 가장 기본적인 사용법은 문자열 형식화 문자 %s를 사용하여 문자열에 값을 삽입하는 것입니다.

Python에서 문자열 형식 지정은 C의 sprintf 함수와 동일한 구문을 사용합니다.

Python 문자열 형식 지정 기호:

%c 문자 및 해당 ASCII 코드 형식 지정
%s 문자열 형식 지정
%d Formatt 정수를 보내고 있어요
%u 부호 없는 정수 형식 지정
%o 부호 없는 8진수 형식 지정
%x 부호 없는 16진수 형식 지정
% X 부호 없는 16진수 형식 지정 al 숫자 (대문자)
%f 부동 소수점 숫자 형식을 지정합니다. 소수점 이하의 정밀도를 지정할 수 있습니다.
%e 과학적 표기법으로 부동 소수점 숫자 형식을 지정합니다. Points
%E %e와 동일한 기능 , 과학적 표기법을 사용하여 부동 소수점 숫자의 형식을 지정합니다
%g %f 및 %e
%G %f 및 %E의 약어
%p 의 형식을 지정합니다. 16진수 변수 주소

형식 연산자 보조 지침:

* 너비 또는 소수점 정밀도 정의
- 은 왼쪽 정렬에 사용됩니다
+ 양수 앞에 더하기 기호(+) 표시
양수 앞에 공백 표시
# in 0('0')이 앞에 표시됩니다. 8진수 앞에 '0x' 또는 '0X'가 표시됩니다('x' 또는 'X' 사용 여부에 따라 다름)
0 표시되는 숫자 앞에 패드 '0' 기본 공백 대신
% '%%'는 단일 '%'를 출력합니다.
(var) Map 변수(dict 인수)
m.n. m은 다음의 최소 총 너비입니다. 디스플레이, n은 소수점 이하 자릿수입니다(사용 가능한 경우)


>>> print("ascii:%c"%'s') #格式化输出字符
ascii:s
>>> print("ascii:%c"%'1') #格式化输出数字
ascii:1
>>> print("str:%s"%'character string') #格式化字符串
str:character string
>>> print("str:%d"%888) #格式化整数
str:888
>>> print("str:%f"%888) #格式浮点数
str:888.000000
>>> print("str:%e"%888) #格式化科学计数浮点数
str:8.880000e+02
>>> print("str:%E"%888) #同上
str:8.880000E+02
>>> print("str:%G"%888) #%f和%E的简写
str:888

>>> print("str:%20f"%888.089) #定义20宽度输出
str:  888.089000
>>> print("str:%-20f"%888.089) #用左对齐
str:888.089000  
>>> print("str:%+20f"%888.089) #在正数前显示加号
str:  +888.089000
>>> print("str:%+-20f"%888.089) #左对齐显示加号
str:+888.089000  
>>> print("str:%020f"%888.089) #以0填充默认的空格
str:0000000000888.089000
>>> print("str:%%%20f"%888.089) #在数字前输入%号
str:%  888.089000
>>> print("str:%%%-20f"%888.089) #左对齐输出%号
str:%888.089000  
>>> print("str:%20.3f"%888.089) #显示最小总宽度20,小数点后位数为3位
str:  888.089

python2.6부터 형식 문자열 함수 str.format()이 추가되었습니다.

사용법: 다음을 사용합니다. {} 및: %

대체 위치 매개변수는 순서 제약을 받지 않으며 {} 형식에 해당 매개변수 값이 있는 한 비어 있을 수 있습니다. 매개변수 값이 충분하지 않으면 오류가 발생합니다. 매개변수 인덱스는 0부터 시작하며, 들어오는 위치 매개변수 목록은 *list


In [27]: '{}+{}={}'.format(1,2,3) #格式化按顺序应用参数值
Out[27]: '1+2=3'
In [28]: '{2}-{1}={0}'.format(1,2,3) #指定顺序应用参数值
Out[28]: '3-2=1'
In [29]: '{0}+{0}={1}'.format(2,3) #指定参数可以重复使用
Out[29]: '2+2=3'
In [30]: '{}+{}={}'.format(2,3) #如不指定顺序,format参数不够就会报错
---------------------------------------------------------------------------
IndexError    Traceback (most recent call last)
<ipython-input-30-29f40e412920> in <module>()
----> 1 &#39;{}+{}={}&#39;.format(2,3)
IndexError: tuple index out of range

In [31]: l1 = [2,4,8] 
In [32]: &#39;{}*{}={}&#39;.format(*l1) #使用列表引用参数值
Out[32]: &#39;2*4=8&#39;

In [33]: dct = {&#39;name&#39;:&#39;python&#39;,&#39;age&#39;:20} #定义字典
In [35]: &#39;welcom to {name},age is {age}&#39;.format(name=&#39;qi&#39;,age=28) #变量引用
Out[35]: &#39;welcom to qi,age is 28&#39;

In [36]: &#39;welcom to {name},age is {age}&#39;.format(**dct) #使用**引用字典参数必须填写key值
Out[36]: &#39;welcom to python,age is 20&#39;

填充与格式化:
In [53]: "{0: >20}".format("string") #从0位开始已空格填充20宽度左对齐
Out[53]: &#39;  string&#39;

In [54]: "{0:&>20}".format("string")
Out[54]: &#39;&&&&&&&&&&&&&&string&#39;

In [55]: "{0:#>20}".format("string") #使用#号会有个小bug
 ....: 
Out[55]: &#39;##############string&#39;

In [60]: &#39;{0:+<20}&#39;.format("string") #向右对齐填充+
Out[60]: &#39;string++++++++++++++&#39;

In [61]: &#39;{0:+^20}&#39;.format("string") #剧中对齐填充+
Out[61]: &#39;+++++++string+++++++&#39;

精度与进制:
>>> &#39;{0:.3f}&#39;.format(10/3) #小数位进度格式化
&#39;3.333&#39;
>>> &#39;{0:b}&#39;.format(8) #格式化二进制
&#39;1000&#39;
>>> &#39;{0:o}&#39;.format(9) #格式化八进制
&#39;11&#39;
>>> &#39;{0:x}&#39;.format(26) #格式化十六进制
&#39;1a&#39;
>>> &#39;{0:,}&#39;.format(123456789) #千分位格式化
&#39;123,456,789&#39;

使用索引:
>>> l2 = [&#39;AA&#39;,{&#39;bb&#39;:&#39;cc&#39;},(&#39;d&#39;,&#39;e&#39;)] #列表索引引用
>>> &#39;outing:{0[0]}&#39;.format(l2) 
&#39;outing:AA&#39;
>>> &#39;outing:{0[0]},{0[1]}&#39;.format(l2) #将列表当成一个元素,在其中索引值
"outing:AA,{&#39;bb&#39;: &#39;cc&#39;}"

5일 수 있습니다. Python의 문자열 메서드


>>> s = &#39;i mi to&#39; #将字符串的第一个字符改为大写
>>> s.capitalize()
&#39;I mi to&#39;

>>> s = &#39;I MI TO&#39; #将字符串所有字符改为小写
>>> s.casefold()
&#39;i mi to&#39;

>>> s.center(15) #将字符串剧中,并用空格将字符串填充长度,如指定长度小于实际长度则没有效果
&#39; I MI TO &#39;

>>> s = &#39;abcabcabcabc&#39; #返回sub在字符串里出现的次数,start,end为可选参数,决定范围
>>> s.count(&#39;a&#39;,0,12)
4
>>> s.encode(encoding=&#39;utf-8&#39;,errors=&#39;strict&#39;) #以encoding指定的编码格式对字符串进行编码
b&#39;abcabcabcabc&#39;
>>> s.endswith(&#39;abc&#39;,1,12) #检查字符串是否以sub结尾,是返回True,否返回False,start,end为可选参数,决定范围
True

>>> s = &#39;a\tb\tc&#39;
>>> s.expandtabs(4) #把字符串的tab字符(\t)转化为空格,如不指定tabsize,默认为8个空格
&#39;a b c&#39;

>>> s.find(&#39;b&#39;) #检测字符串是否在字符串中,如在则返回索引,否则返回-1,可指定起始值。
2

>>> s=&#39;hello python&#39;
>>> s.index(&#39;hello&#39;) # 类似find(),不同在于如果sub不在字符串中,返回异常
0 

>>> s.isalnum() #有空格返回false
False
>>> s=&#39;hellopython&#39;
>>> s.isalnum() #如果字符串至少有一个字符,并且所有字符都是字母或数字则返回True,否则False
True
>>> s.isalpha() #如果字符串至少有一个字符,并且所有字符都是字母则返回True,否则False
True

>>> s = &#39;123&#39;
>>> s.isdigit() #如果字符串只包含数字则返回True,否则返回False
True

>>> s = &#39;123&#39;
>>> s.isdecimal() #如果字符串只包含十进制数字则返回True,否则返回False
True
>>> s= &#39;ox123&#39;
>>> s.isdecimal()
False
>>> s = &#39;0.33&#39;
>>> s.isdecimal()
False

>>> s = &#39;abc&#39;
>>> s.islower() #如果字符中至少包含一个能区分大小写的字符,并且这些字符都是小写则返回True,否则返回Flase
True
>>> s = &#39;Abc&#39;
>>> s.islower()
False

>>> s = &#39;ABC&#39;
>>> s.isupper() #果字符中至少包含一个能区分大小写的字符,并且这些字符都是大写则返回True,否则返回Flase
True
>>> s = &#39;ABc&#39;
>>> s.isupper()
False
>>> 

>>> s = &#39;123&#39;
>>> s.isnumeric() #如果字符串只包含数字字符,则返回True,否则返回False
True
>>> s = &#39;123a&#39;
>>> s.isnumeric()
False

>>> &#39;def&#39;.isidentifier() #判断字符串是否包含该语言的保留字
True

>>> &#39;aaa&#39;.isprintable() #判断是否可以打印
True

>>> &#39;&#39;.isspace()
False
>>> &#39; &#39;.isspace() #判断字符串中至少有一个字符且所有都是空格,否则返回false
True
>>> &#39; a&#39;.isspace()
False

>>> &#39;Abc&#39;.istitle() #判断是否是标题 格式,可以理解为首字母大写。
True
>>> &#39;aBC&#39;.istitle()
False

>>> s = &#39;123&#39;
>>> &#39;_&#39;.join(s) #返回一个用指定字符串分隔的字,或者是将指定字符加入到另一个字符中。
&#39;1_2_3&#39;
>>> s.join(&#39;abc&#39;)
&#39;a123b123c&#39;

>>> s = &#39;ABC&#39;
>>> s.lower() #返回的是指定字符串的拷贝,并转化成小写
&#39;abc&#39;

>>> s.ljust(10,&#39;+&#39;) #可以指定宽度,以及填充字符串,返回的是按宽度,填充字符串格式化后的左对齐的字符串。
&#39;ABC+++++++&#39;

>>> &#39;aaabccc&#39;.partition(&#39;b&#39;) #在字符串中查找指定的字符,如找到则返回字符前部分,字符本身和后部分,如没找到则返回字符串和两个空字符串。
(&#39;aaa&#39;, &#39;b&#39;, &#39;ccc&#39;)
>>> &#39;aaabccc&#39;.partition(&#39;e&#39;)
(&#39;aaabccc&#39;, &#39;&#39;, &#39;&#39;)

>>> &#39;aaabccc&#39;.rpartition(&#39;b&#39;) #与partition一样,但是是从右边开始
(&#39;aaa&#39;, &#39;b&#39;, &#39;ccc&#39;)
>>> &#39;aaabccc&#39;.rpartition(&#39;c&#39;)
(&#39;aaabcc&#39;, &#39;c&#39;, &#39;&#39;)


>>> &#39;aaaaabbcc&#39;.replace(&#39;a&#39;,&#39;A&#39;) #用指定字符串替换指定字符串,如果不指定替换次数,则替换所有
&#39;AAAAAbbcc&#39;
>>> &#39;aaaaabbcc&#39;.replace(&#39;a&#39;,&#39;A&#39;,2)
&#39;AAaaabbcc&#39;

>>> &#39;aabbcc&#39;.rfind(&#39;a&#39;) #返回指定子串的最高索引,如果没找到则返回-1,可以指定要开始替换的起始,结束位置。
1
>>> &#39;aabbcc&#39;.rfind(&#39;e&#39;)
-1
>>> &#39;aabbcc&#39;.rindex(&#39;a&#39;) #与上面的rfind一样,只是如果没找到不是返回-1,而是触发错误
1
>>> &#39;aabbcc&#39;.rindex(&#39;e&#39;)
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ValueError: substring not found

>>> &#39;aa&#39;.rjust(10,&#39;+&#39;) #与ljust()相对应,右对齐
&#39;++++++++aa&#39;
>>> &#39;aa&#39;.ljust(10,&#39;+&#39;)
&#39;aa++++++++&#39;

>>> &#39;aabccbddbee&#39;.split(&#39;b&#39;) ##按指定字符串对目标字符串进行切割,可以指定切割次数
[&#39;aa&#39;, &#39;cc&#39;, &#39;dd&#39;, &#39;ee&#39;]
>>> &#39;aabccbddbee&#39;.split(&#39;b&#39;,2)
[&#39;aa&#39;, &#39;cc&#39;, &#39;ddbee&#39;]

>>> &#39;aabccbddbee&#39;.rsplit(&#39;b&#39;,2) #与split作用相同,但是从右侧开始
[&#39;aabcc&#39;, &#39;dd&#39;, &#39;ee&#39;]

>>> &#39; aabb &#39;.strip() #移除字符串两侧的指定字符串,默认移除空格,需要注意的是可以指定多个字符
&#39;aabb&#39;
>>> &#39; aabb&#39;.strip(&#39;b&#39;)
&#39; aa&#39;
>>> &#39; aabb&#39;.strip(&#39;ab&#39;)
&#39; &#39;
>>> &#39;beaacebb&#39;.rstrip(&#39;eb&#39;) #与strip一样,从右侧删除指定字符,可以为多个
&#39;beaac&#39;

>>> &#39;aa\nbb\ncc\ndd&#39;.splitlines() #按换行符切割显示,如没指定keepends=True则将换行符移除。
[&#39;aa&#39;, &#39;bb&#39;, &#39;cc&#39;, &#39;dd&#39;]
>>> &#39;aa\nbb\ncc\ndd&#39;.splitlines(keepends=True)
[&#39;aa\n&#39;, &#39;bb\n&#39;, &#39;cc\n&#39;, &#39;dd&#39;]

>>> &#39;aabbc&#39;.startswith(&#39;a&#39;) #判断字符串是否以某个字符开头,可以是多字符
True
>>> &#39;aabbc&#39;.startswith(&#39;b&#39;)
False
>>> &#39;aabbc&#39;.startswith(&#39;aab&#39;)
True

>>> &#39;aaBBcc&#39;.swapcase() #转换大小写
&#39;AAbbCC&#39;

>>> &#39;wend is ok&#39;.title() #标题格式,首字母大写,其它字符小写
&#39;Wend Is Ok&#39;

>>> &#39;wend is ok&#39;.upper() #将字符全部转换成大写
&#39;WEND IS OK&#39;

>>> &#39;wend is ok&#39;.zfill(20) #这里的z指zero,用0将字符填充到指定长度
&#39;0000000000wend is ok&#39;

위 내용은 Python의 문자열 설명 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
详细讲解Python之Seaborn(数据可视化)详细讲解Python之Seaborn(数据可视化)Apr 21, 2022 pm 06:08 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于Seaborn的相关问题,包括了数据可视化处理的散点图、折线图、条形图等等内容,下面一起来看一下,希望对大家有帮助。

使用java的Character.isDefined()函数判断字符是否为已定义字符使用java的Character.isDefined()函数判断字符是否为已定义字符Jul 25, 2023 am 10:33 AM

使用Java的Character.isDefined()函数判断字符是否为已定义字符在Java编程中,有时候需要判断一个字符是否为已定义的字符。为了方便,Java提供了Character类的isDefined()函数,可以帮助我们快速判断一个字符是否为已定义字符。本文将介绍这个函数的使用方法,并提供一些代码示例。Character类是Java中表示单个字符的

详细了解Python进程池与进程锁详细了解Python进程池与进程锁May 10, 2022 pm 06:11 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于进程池与进程锁的相关问题,包括进程池的创建模块,进程池函数等等内容,下面一起来看一下,希望对大家有帮助。

归纳总结Python标准库归纳总结Python标准库May 03, 2022 am 09:00 AM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于标准库总结的相关问题,下面一起来看一下,希望对大家有帮助。

Python数据类型详解之字符串、数字Python数据类型详解之字符串、数字Apr 27, 2022 pm 07:27 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于数据类型之字符串、数字的相关问题,下面一起来看一下,希望对大家有帮助。

Java使用Character类的isLetterOrDigit()函数判断字符是否是字母或数字Java使用Character类的isLetterOrDigit()函数判断字符是否是字母或数字Jul 24, 2023 pm 02:45 PM

Java使用Character类的isLetterOrDigit()函数判断字符是否是字母或数字在Java编程中,我们经常需要对字符进行一些操作和判断。其中一个常见的需求是判断一个字符是否是字母或数字。Java提供了Character类的isLetterOrDigit()函数来帮助我们实现这个功能。Character类是一个包装类,用于对字符进行操作和判断。

分享10款高效的VSCode插件,总有一款能够惊艳到你!!分享10款高效的VSCode插件,总有一款能够惊艳到你!!Mar 09, 2021 am 10:15 AM

VS Code的确是一款非常热门、有强大用户基础的一款开发工具。本文给大家介绍一下10款高效、好用的插件,能够让原本单薄的VS Code如虎添翼,开发效率顿时提升到一个新的阶段。

详细介绍python的numpy模块详细介绍python的numpy模块May 19, 2022 am 11:43 AM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于numpy模块的相关问题,Numpy是Numerical Python extensions的缩写,字面意思是Python数值计算扩展,下面一起来看一下,希望对大家有帮助。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기