рдХрд┐рд╕реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдкрд╛рда рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП .find() рдпрд╛ .index() рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓реЗрдирд╛ рдЖрдо рд╣реИтАФрдФрд░ рдлрд┐рд░ ValueError рдЬреИрд╕реА рдЕрдЬреАрдм рд╕рдорд╕реНрдпрд╛рдУрдВ рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд╢реБрд░реБрдЖрдд рдкрд░ рдЫреВрдЯрд╛ рд╣реБрдЖ рдорд┐рд▓рд╛рди рджреЗрдЦрдиреЗ рдХреЛ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡рд┐рдЯреА, рд╕реНрд▓рд╛рдЗрд╕ рд╕реАрдорд╛рдУрдВ рдореЗрдВ рдПрдХ-рд╕реЗ-рдЧрд▓рддреА, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ str рдкрд░ .contains() рдореЗрдердб рдирд╣реАрдВ рд╣реИ, рднреНрд░рдо рдмрдврд╝рд╛рддреЗ рд╣реИрдВред рд╕рдорд╛рдзрд╛рди рд╕реАрдзрд╛ рд╣реИ: рдХрд╛рдо рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рд╣рдо in рдСрдкрд░реЗрдЯрд░ рдкрд░, рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП .find()/.index() рдкрд░, рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП .count() рдкрд░, рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП .replace() рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВтАФрдФрд░ рдЬрдм рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡рд┐рдЯреА рдорд╛рдпрдиреЗ рд░рдЦрддреА рд╣реИ, рддреЛ рдХреБрдЫ Unicode-рд╕реБрд░рдХреНрд╖рд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
Python рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░реНрдЪ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ
Python рдХреА рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ Unicode рд╣реЛрддреА рд╣реИрдВред рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдСрдкрд░реЗрд╢рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реИрдВ рдФрд░ рддреЗрдЬрд╝реА рдХреЗ рд▓рд┐рдП C рдореЗрдВ рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕реАрдзрд╛ рддрд░реАрдХрд╛ рдХрд┐ рдХреЛрдИ рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рднреАрддрд░ рдЖрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, in рдСрдкрд░реЗрдЯрд░ рд╣реИ, рдЬреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ __contains__() рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП Boolean рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЬрдм рдЖрдкрдХреЛ рд╕реНрдерд╛рди рдпрд╛ рдЧрдгрдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рд╕рдорд░реНрдкрд┐рдд str рдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рд╡реИрдХрд▓реНрдкрд┐рдХ start рдФрд░ end рдкреИрд░рд╛рдореАрдЯрд░реНрд╕ рд╕реНрд▓рд╛рдЗрд╕ рд╕реЗрдореИрдЯрд┐рдХреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ: start рд╕рдорд╛рд╡реЗрд╢реА рд╣реИ; end рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реИред
in рдХреЗ рд╕рд╛рде рд╕рдорд╛рд╡реЗрд╢рди
рдЬрдм рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдпрд╣ рдкрд░рд╡рд╛рд╣ рд╣реИ рдХрд┐ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ, рддреЛ "needle" in haystack рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдкрдардиреАрдп рд╣реИ рдФрд░ рдЗрдВрдбреЗрдХреНрд╕ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИред
text = "Banana bread"
print ( "ban" in text)
print ( "Ban" in text) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП, рджреЛрдиреЛрдВ рдУрд░ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред .casefold() .lower() рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ Unicode-рд╕рдЪреЗрдд рд╣реИ рдФрд░ рдХреЗрд╕рд▓реЗрд╕ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИред
pattern = "ban"
print ( pattern. casefold( ) in text. casefold( ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдХрдм рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рддреНрд╡рд░рд┐рдд рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ, рдЗрдирдкреБрдЯ рд╡реИрд▓рд┐рдбреЗрд╢рди, рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛ред
рдХрд┐рдирд╛рд░реА рдорд╛рдорд▓рд╛: "" in s рд╣рдореЗрд╢рд╛ True рд╣реЛрддрд╛ рд╣реИ (рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд╣реЛрддреА рд╣реИ)ред
str.find() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
str.find() рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╕рдмрд╕реЗ рдХрдо рдЗрдВрдбреЗрдХреНрд╕ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдпрд╛ рди рдорд┐рд▓рдиреЗ рдкрд░ -1ред рд╡реИрдХрд▓реНрдкрд┐рдХ start рдФрд░ end рдЦреЛрдЬ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреЗ рд╣реИрдВред
s. find( substring, start= 0 , end= len ( s) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЙрджрд╛рд╣рд░рдг рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ
рдЬрдм рдЖрдкрдХреЛ рд╕реНрдерд┐рддрд┐ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЖрдк рдПрдХреНрд╕реЗрдкреНрд╢рди рдХреЗ рдмрд┐рдирд╛ тАЬрдирд╣реАрдВ рдорд┐рд▓рд╛тАЭ рдорд╛рди рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ .find() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
tagline = "Ship fast. Fix faster."
print ( tagline. find( "fast" ) )
print ( tagline. find( "fast" , 6 ) )
print ( tagline. find( "slow" ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП if s.find(sub): рди рд▓рд┐рдЦреЗрдВред рдпрджрд┐ рдорд┐рд▓рд╛рди рдЗрдВрдбреЗрдХреНрд╕ 0 рдкрд░ рд╣реИ, рддреЛ рд╢рд░реНрдд falsey рд╣реЛрдЧреАред
name = "Alice"
if name. find( "A" ) :
print ( "Found A" )
if name. find( "A" ) != - 1 :
print ( "Found A" ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
str.index() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
.index() .find() рдЬреИрд╕рд╛ рд╣реИ, рдкрд░ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рди рдорд┐рд▓рдиреЗ рдкрд░ ValueError рдЙрдард╛рддрд╛ рд╣реИред
s. index( substring, start= 0 , end= len ( s) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЙрджрд╛рд╣рд░рдг рдФрд░ рдХрдм рдЪреБрдиреЗрдВ
рдЬрдм рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╣реЛрдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реЛ рдФрд░ рдЕрд╕рдлрд▓рддрд╛ рдкрд░ рдПрдХреНрд╕реЗрдкреНрд╢рди рд╕рд╣реА рдлрд╝реЗрд▓реНрдпреЛрд░ рдореЛрдб рд╣реЛ, рддрдм .index() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
product = "USB-C Cable"
print ( product. index( "Cable" ) )
try :
product. index( "HDMI" )
except ValueError:
print ( "Required label missing" ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
str.count() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
.count() рдЧреИрд░-рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рд╕рдВрдЦреНрдпрд╛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдпрд╣ start рдФрд░ end рд╕реАрдорд╛рдПрдБ рднреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
s. count( substring, start= 0 , end= len ( s) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЙрджрд╛рд╣рд░рдг рдФрд░ рдХрд┐рдирд╛рд░реА рдорд╛рдорд▓реЗ
рддреНрд╡рд░рд┐рдд рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП .count() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, regex рдХреЗ рдмрд┐рдирд╛ред
log_line = "ERROR: timeout. ERROR: retry. ERROR: gave up."
print ( log_line. count( "ERROR" ) )
print ( log_line. count( "WARN" ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛: рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧред
print ( "abc" . count( "" ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
str.replace() рдореЗрдердб
.replace() рдПрдХ рдирдИ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ old рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ new рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП count рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
s. replace( old, new, count= - 1 ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдмрджрд▓рдирд╛
рдпрд╣ рдореЗрдердб рдЗрди-рдкреНрд▓реЗрд╕ рдирд╣реАрдВ рд╣реИ; рдпрд╣ рдПрдХ рдХреЙрдкреА рд▓реМрдЯрд╛рддрд╛ рд╣реИред
message = "The red house is between the blue house and the old house"
print ( message. replace( "house" , "car" ) )
print ( message. replace( "house" , "car" , 2 ) )
рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ
рдореВрд▓ рдХреЗрд╕-рдкреИрдЯрд░реНрди рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП re.IGNORECASE рдХреЗ рд╕рд╛рде re.sub() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрд╛ рдпрджрд┐ рдЖрдкрдХреЛ рдореВрд▓ рдХреЗрд╕рд┐рдВрдЧ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рддреЛ .casefold() рд╕реЗ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред
.casefold() рдХреЗ рд╕рд╛рде рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдорд┐рд▓рд╛рди
.casefold() рдЖрдХреНрд░рд╛рдордХ, Unicode-рд╕рдЪреЗрдд рдХреЗрд╕ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╕рд▓реЗрд╕ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП .lower() рдкрд░ рд╡рд░реАрдп рд╣реИред
query = "stra├Яe"
text = "STRASSE und mehr"
print ( query. casefold( ) in text. casefold( ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдкреНрд░рд┐рдлрд┐рдХреНрд╕ рдФрд░ рд╕рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдЯреВрд▓реНрд╕
рдЬреНрдЮрд╛рдд рд╢реБрд░реБрдЖрдд/рдЕрдВрдд рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВтАФрд╡реЗ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдпрд╛ regex рд╕реЗ рддреЗрдЬрд╝ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ:
s.startswith(prefix) рдФрд░ s.endswith(suffix) (рдПрдХрд╛рдзрд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрдкрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ)
s.removeprefix(prefix) рдФрд░ s.removesuffix(suffix) (Python 3.9+)
filename = "draft_report_v2.pdf"
print ( filename. removeprefix( "draft_" ) )
print ( filename. endswith( ( ".pdf" , ".docx" ) ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
Pandas рдХреЙрд▓рдореНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛
DataFrame рдХреЙрд▓рдо рдореЗрдВ рдХрдИ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЦреЛрдЬрддреЗ рд╕рдордп, рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬрд╝реНрдб рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рд▓рд┐рдЯрд░рд▓ рдЯреЗрдХреНрд╕реНрдЯ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП regex=False рд╕реЗрдЯ рдХрд░реЗрдВред
import pandas as pd
cities = pd. Series( [ "New York" , "Yorktown" , None , "Toronto" ] , dtype= "string" )
mask = cities. str . contains( "York" , regex= False , na= False )
print ( mask. tolist( ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ:
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ regex=True рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП . рдЬреИрд╕реЗ рд╡рд┐рд╢реЗрд╖ рдЕрдХреНрд╖рд░ рддрдм рддрдХ рдХрд┐рд╕реА рднреА рдЕрдХреНрд╖рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдЖрдк regex рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рддреЗред
рдирд▓ рдорд╛рдиреЛрдВ рдХреЛ na=... рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрднрд╛рд▓реЗрдВред StringDtype рдХреЗ рд╕рд╛рде, рдорд┐рд╕рд┐рдВрдЧ рдорд╛рди рдорд╛рд╕реНрдХ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ False рд╣реЛрддреЗ рд╣реИрдВред
рдЖрдо рдЧрд▓рддрд┐рдпрд╛рдБ рдФрд░ рдХрд┐рдирд╛рд░реА рдорд╛рдорд▓реЗ
рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗрдореИрдЯрд┐рдХреНрд╕: "ab" in "cat,bat" False рд╣реИ, рднрд▓реЗ рд╣реА "a" рдФрд░ "b" рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореМрдЬреВрдж рд╣реЛрдВтАФрдорд┐рд▓рд╛рди рд╕рдиреНрдирд┐рд╣рд┐рдд (contiguous) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╣реИрдВрдбреНрд╕-рдСрди рдЙрджрд╛рд╣рд░рдг рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдпреЗ рдЫреЛрдЯреЗ рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рд╕рд╣реА рдкреИрдЯрд░реНрди рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЖрдо рдЧреЙрдЯрдЪрд╛рдЬрд╝ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ
headline = "Where's Waldo?"
print ( "Waldo" in headline)
print ( "Wenda" in headline)
print ( headline. find( "Waldo" ) )
print ( headline. find( "Wenda" ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
start рдФрд░ end рдХреЗ рд╕рд╛рде рд╕реАрдорд┐рдд рдЦреЛрдЬ
End рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЦреЛрдЬ рдХреА рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╕реНрд▓рд╛рдЗрд╕ рд╕реЗрдореИрдЯрд┐рдХреНрд╕ рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИрдВред
headline = "Where's Waldo?"
print ( headline. find( "Waldo" , 0 , 6 ) )
print ( headline. find( "Waldo" , 0 , 13 ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЧрд┐рдирддреА рдФрд░ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ
inventory = "apple, apple, pear, apple"
print ( inventory. count( "apple" ) )
print ( inventory. replace( "apple" , "orange" , 2 ) ) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
Python рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░реНрдЪ рдФрд░ рд░рд┐рдкреНрд▓реЗрд╕ рдЕрднреНрдпрд╛рд╕ рдЙрджрд╛рд╣рд░рдг┬а
рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдореВрд╡реА рдмреНрд▓рд░реНрдмреНрд╕ рдХреА рд╕реВрдЪреА рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ, рд╕реАрдорд┐рдд рдЦреЛрдЬ, рдФрд░ regex рдХреЗ рдмрд┐рдирд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
blurbs = [
"Critics say the lead actor delivers a career-best performance." ,
"Fans argue the actor actor scene was intentionally repetitive." ,
"A clever cameo steals the show."
]
for blurb in blurbs:
window_has_actor = "actor" . casefold( ) in blurb[ 20 : 40 ] . casefold( )
if not window_has_actor:
print ( "Window check: actor not found" )
continue
if "actor actor" in blurb:
print ( blurb. replace( "actor actor" , "actor" ) )
elif "actor actor actor" in blurb:
print ( blurb. replace( "actor actor actor" , "actor" ) )
else :
print ( blurb) рд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдЖрдЙрдЯрдкреБрдЯ:
Window check: actor not found
Fans argue the actor scene was intentionally repetitive.
Window check: actor not foundрд╕рдВрдЪрд╛рд▓рд┐рдд рджреНрд╡рд╛рд░рд╛
рдирд┐рд╖реНрдХрд░реНрд╖
рд╕рд░рд▓ рд╕рдорд╛рд╡реЗрд╢рди рдХреЗ рд▓рд┐рдП in рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╕реНрдерд╛рдиреЛрдВ рдХреА рдЬрд╝рд░реВрд░рдд рдкрд░ .find() рдпрд╛ .index(), рдЧреИрд░-рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП .count(), рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП .replace()ред рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП .casefold() рд╕реЗ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ, рдФрд░ рдЙрдЪрд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╕рдорд░реНрдкрд┐рдд рдкреНрд░рд┐рдлрд┐рдХреНрд╕/рд╕рдлрд┐рдХреНрд╕ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВред рд╣рдо .find() рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ Boolean рдореЗрдВ рдХрдиреНрд╡рд░реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛрдб рдХреЛ рд╕рд╣реА рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд╛рд▓реА-рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рдорд╛рдирддреЗ рд╣реИрдВред
рдХрд┐рд╕реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдкрд╛рда рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП
.find()рдпрд╛.index()рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓реЗрдирд╛ рдЖрдо рд╣реИтАФрдФрд░ рдлрд┐рд░ValueErrorрдЬреИрд╕реА рдЕрдЬреАрдм рд╕рдорд╕реНрдпрд╛рдУрдВ рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд╢реБрд░реБрдЖрдд рдкрд░ рдЫреВрдЯрд╛ рд╣реБрдЖ рдорд┐рд▓рд╛рди рджреЗрдЦрдиреЗ рдХреЛ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡рд┐рдЯреА, рд╕реНрд▓рд╛рдЗрд╕ рд╕реАрдорд╛рдУрдВ рдореЗрдВ рдПрдХ-рд╕реЗ-рдЧрд▓рддреА, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐strрдкрд░.contains()рдореЗрдердб рдирд╣реАрдВ рд╣реИ, рднреНрд░рдо рдмрдврд╝рд╛рддреЗ рд╣реИрдВред рд╕рдорд╛рдзрд╛рди рд╕реАрдзрд╛ рд╣реИ: рдХрд╛рдо рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рд╣рдоinрдСрдкрд░реЗрдЯрд░ рдкрд░, рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП.find()/.index()рдкрд░, рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП.count()рдкрд░, рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП.replace()рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВтАФрдФрд░ рдЬрдм рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡рд┐рдЯреА рдорд╛рдпрдиреЗ рд░рдЦрддреА рд╣реИ, рддреЛ рдХреБрдЫ Unicode-рд╕реБрд░рдХреНрд╖рд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВредPython рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░реНрдЪ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ
Python рдХреА рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ Unicode рд╣реЛрддреА рд╣реИрдВред рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдСрдкрд░реЗрд╢рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реИрдВ рдФрд░ рддреЗрдЬрд╝реА рдХреЗ рд▓рд┐рдП C рдореЗрдВ рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕реАрдзрд╛ рддрд░реАрдХрд╛ рдХрд┐ рдХреЛрдИ рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рднреАрддрд░ рдЖрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ,
inрдСрдкрд░реЗрдЯрд░ рд╣реИ, рдЬреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ__contains__()рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП Boolean рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЬрдм рдЖрдкрдХреЛ рд╕реНрдерд╛рди рдпрд╛ рдЧрдгрдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рд╕рдорд░реНрдкрд┐рддstrрдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рд╡реИрдХрд▓реНрдкрд┐рдХstartрдФрд░endрдкреИрд░рд╛рдореАрдЯрд░реНрд╕ рд╕реНрд▓рд╛рдЗрд╕ рд╕реЗрдореИрдЯрд┐рдХреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ: start рд╕рдорд╛рд╡реЗрд╢реА рд╣реИ; end рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реИредin рдХреЗ рд╕рд╛рде рд╕рдорд╛рд╡реЗрд╢рди
рдЬрдм рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдпрд╣ рдкрд░рд╡рд╛рд╣ рд╣реИ рдХрд┐ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ, рддреЛ
"needle" in haystackрдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдкрдардиреАрдп рд╣реИ рдФрд░ рдЗрдВрдбреЗрдХреНрд╕ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИредрдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП, рджреЛрдиреЛрдВ рдУрд░ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред
.casefold().lower()рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ Unicode-рд╕рдЪреЗрдд рд╣реИ рдФрд░ рдХреЗрд╕рд▓реЗрд╕ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИред"" in sрд╣рдореЗрд╢рд╛Trueрд╣реЛрддрд╛ рд╣реИ (рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд╣реЛрддреА рд╣реИ)редstr.find() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
str.find()рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╕рдмрд╕реЗ рдХрдо рдЗрдВрдбреЗрдХреНрд╕ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдпрд╛ рди рдорд┐рд▓рдиреЗ рдкрд░-1ред рд╡реИрдХрд▓реНрдкрд┐рдХstartрдФрд░endрдЦреЛрдЬ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреЗ рд╣реИрдВредрдЙрджрд╛рд╣рд░рдг рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ
рдЬрдм рдЖрдкрдХреЛ рд╕реНрдерд┐рддрд┐ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЖрдк рдПрдХреНрд╕реЗрдкреНрд╢рди рдХреЗ рдмрд┐рдирд╛ тАЬрдирд╣реАрдВ рдорд┐рд▓рд╛тАЭ рдорд╛рди рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ
.find()рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВредрдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП
if s.find(sub):рди рд▓рд┐рдЦреЗрдВред рдпрджрд┐ рдорд┐рд▓рд╛рди рдЗрдВрдбреЗрдХреНрд╕ 0 рдкрд░ рд╣реИ, рддреЛ рд╢рд░реНрдд falsey рд╣реЛрдЧреАредstr.index() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
.index().find()рдЬреИрд╕рд╛ рд╣реИ, рдкрд░ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рди рдорд┐рд▓рдиреЗ рдкрд░ValueErrorрдЙрдард╛рддрд╛ рд╣реИредрдЙрджрд╛рд╣рд░рдг рдФрд░ рдХрдм рдЪреБрдиреЗрдВ
рдЬрдм рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╣реЛрдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реЛ рдФрд░ рдЕрд╕рдлрд▓рддрд╛ рдкрд░ рдПрдХреНрд╕реЗрдкреНрд╢рди рд╕рд╣реА рдлрд╝реЗрд▓реНрдпреЛрд░ рдореЛрдб рд╣реЛ, рддрдм
.index()рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВредstr.count() рдореЗрдердб
рд╕рд┐рдиреНрдЯреИрдХреНрд╕
.count()рдЧреИрд░-рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рд╕рдВрдЦреНрдпрд╛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдпрд╣startрдФрд░endрд╕реАрдорд╛рдПрдБ рднреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИредрдЙрджрд╛рд╣рд░рдг рдФрд░ рдХрд┐рдирд╛рд░реА рдорд╛рдорд▓реЗ
рддреНрд╡рд░рд┐рдд рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП
.count()рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, regex рдХреЗ рдмрд┐рдирд╛редрд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛: рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧред
str.replace() рдореЗрдердб
.replace()рдПрдХ рдирдИ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВoldрдХреА рдЙрдкрд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛnewрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПcountрдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВредрд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдмрджрд▓рдирд╛
рдпрд╣ рдореЗрдердб рдЗрди-рдкреНрд▓реЗрд╕ рдирд╣реАрдВ рд╣реИ; рдпрд╣ рдПрдХ рдХреЙрдкреА рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ
рдореВрд▓ рдХреЗрд╕-рдкреИрдЯрд░реНрди рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП
re.IGNORECASEрдХреЗ рд╕рд╛рдеre.sub()рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрд╛ рдпрджрд┐ рдЖрдкрдХреЛ рдореВрд▓ рдХреЗрд╕рд┐рдВрдЧ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рддреЛ.casefold()рд╕реЗ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред.casefold() рдХреЗ рд╕рд╛рде рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдорд┐рд▓рд╛рди
.casefold()рдЖрдХреНрд░рд╛рдордХ, Unicode-рд╕рдЪреЗрдд рдХреЗрд╕ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╕рд▓реЗрд╕ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП.lower()рдкрд░ рд╡рд░реАрдп рд╣реИредрдкреНрд░рд┐рдлрд┐рдХреНрд╕ рдФрд░ рд╕рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдЯреВрд▓реНрд╕
рдЬреНрдЮрд╛рдд рд╢реБрд░реБрдЖрдд/рдЕрдВрдд рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВтАФрд╡реЗ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдпрд╛ regex рд╕реЗ рддреЗрдЬрд╝ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ:
s.startswith(prefix)рдФрд░s.endswith(suffix)(рдПрдХрд╛рдзрд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрдкрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ)s.removeprefix(prefix)рдФрд░s.removesuffix(suffix)(Python 3.9+)Pandas рдХреЙрд▓рдореНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛
DataFrame рдХреЙрд▓рдо рдореЗрдВ рдХрдИ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЦреЛрдЬрддреЗ рд╕рдордп, рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬрд╝реНрдб рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдердбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рд▓рд┐рдЯрд░рд▓ рдЯреЗрдХреНрд╕реНрдЯ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП
regex=Falseрд╕реЗрдЯ рдХрд░реЗрдВредрдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ:
regex=Trueрд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП.рдЬреИрд╕реЗ рд╡рд┐рд╢реЗрд╖ рдЕрдХреНрд╖рд░ рддрдм рддрдХ рдХрд┐рд╕реА рднреА рдЕрдХреНрд╖рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдЖрдк regex рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рддреЗредna=...рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрднрд╛рд▓реЗрдВредStringDtypeрдХреЗ рд╕рд╛рде, рдорд┐рд╕рд┐рдВрдЧ рдорд╛рди рдорд╛рд╕реНрдХ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗFalseрд╣реЛрддреЗ рд╣реИрдВредрдЖрдо рдЧрд▓рддрд┐рдпрд╛рдБ рдФрд░ рдХрд┐рдирд╛рд░реА рдорд╛рдорд▓реЗ
str рдкрд░ .contains() рдирд╣реАрдВ:
"sub" in sрдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред"abc".contains("a")AttributeErrorрдЙрдард╛рддрд╛ рд╣реИред.find() рдХреА truthiness: рдЗрдВрдбреЗрдХреНрд╕
0falsey рд╣реИ;!= -1рд╕реЗ рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдпрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рд▓рд┐рдПinрдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВред.index() raises: рдпрджрд┐ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИ, рддреЛ
ValueErrorрдХреЛ рд╕рдВрднрд╛рд▓реЗрдВредрдЦрд╛рд▓реА рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ:
"" in sTrueрд╣реИ;s.find("")0рд▓реМрдЯрд╛рддрд╛ рд╣реИ;s.count("")len(s)+1рд╣реЛрддрд╛ рд╣реИредрдХреЗрд╕ рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡рд┐рдЯреА: рдЬрдм рддрдХ рдЖрдк рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рди рдХрд░реЗрдВ рдпрд╛ regex рдлреНрд▓реИрдЧреНрд╕ рди рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╕рднреА рдСрдкрд░реЗрд╢рди рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реЛрддреЗ рд╣реИрдВред
рдмрд╛рдЗрдЯреНрд╕ рдмрдирд╛рдо рдЯреЗрдХреНрд╕реНрдЯ: рдЦреЛрдЬ рдореЗрдВ
bytesрдФрд░strрдХреЛ рди рдорд┐рд▓рд╛рдПрдБ; рдкреНрд░рдХрд╛рд░ рдорд┐рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдХреЛрдб рдпрд╛ рдПрдиреНрдХреЛрдб рдХрд░реЗрдВредрд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗрдореИрдЯрд┐рдХреНрд╕:
"ab" in "cat,bat"Falseрд╣реИ, рднрд▓реЗ рд╣реА"a"рдФрд░"b"рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореМрдЬреВрдж рд╣реЛрдВтАФрдорд┐рд▓рд╛рди рд╕рдиреНрдирд┐рд╣рд┐рдд (contiguous) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПредрд╣реИрдВрдбреНрд╕-рдСрди рдЙрджрд╛рд╣рд░рдг рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдпреЗ рдЫреЛрдЯреЗ рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рд╕рд╣реА рдкреИрдЯрд░реНрди рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЖрдо рдЧреЙрдЯрдЪрд╛рдЬрд╝ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ
start рдФрд░ end рдХреЗ рд╕рд╛рде рд╕реАрдорд┐рдд рдЦреЛрдЬ
End рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЦреЛрдЬ рдХреА рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╕реНрд▓рд╛рдЗрд╕ рд╕реЗрдореИрдЯрд┐рдХреНрд╕ рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИрдВред
рдЧрд┐рдирддреА рдФрд░ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ
Python рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░реНрдЪ рдФрд░ рд░рд┐рдкреНрд▓реЗрд╕ рдЕрднреНрдпрд╛рд╕ рдЙрджрд╛рд╣рд░рдг┬а
рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдореВрд╡реА рдмреНрд▓рд░реНрдмреНрд╕ рдХреА рд╕реВрдЪреА рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдЬрд╛рдВрдЪ, рд╕реАрдорд┐рдд рдЦреЛрдЬ, рдФрд░ regex рдХреЗ рдмрд┐рдирд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдЖрдЙрдЯрдкреБрдЯ:
рдирд┐рд╖реНрдХрд░реНрд╖
рд╕рд░рд▓ рд╕рдорд╛рд╡реЗрд╢рди рдХреЗ рд▓рд┐рдП
inрдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╕реНрдерд╛рдиреЛрдВ рдХреА рдЬрд╝рд░реВрд░рдд рдкрд░.find()рдпрд╛.index(), рдЧреИрд░-рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП.count(), рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП.replace()ред рдХреЗрд╕-рдЗрдирд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП.casefold()рд╕реЗ рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ, рдФрд░ рдЙрдЪрд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╕рдорд░реНрдкрд┐рдд рдкреНрд░рд┐рдлрд┐рдХреНрд╕/рд╕рдлрд┐рдХреНрд╕ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВред рд╣рдо.find()рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ Boolean рдореЗрдВ рдХрдиреНрд╡рд░реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛрдб рдХреЛ рд╕рд╣реА рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд╛рд▓реА-рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рдорд╛рдирддреЗ рд╣реИрдВред