프로그래밍 학습: Python 입시 시험에 필수 [11]

목차

1. 문자열 찾기

2. 문자열 형식 지정

3. 문자열 이스케이프 문자 \' \"

4. 문자열 수정

5. 문자열 연결 및 분할

첨부 코드:

지식 정제 모듈(11)은 그 이름에 걸맞은 문자열입니다.


1. 문자열 찾기

# 1. 1함수에서 사용

a = ' acacacaabaac' 의 ' aa '  

인쇄 (a)

# 1. 2 인덱스를 찾을 수 없으면 오류가 보고됩니다.

b = '안녕하세요 세계' .index( "A" )

인쇄 (b)

# 1. 3 find는 찾을 수 없으면 -1을 반환합니다. 어느 것을 사용하는 것이 더 낫습니까?

c = '안녕하세요 세계' .find( "A" )

인쇄 (c)


2. 문자열 형식 지정

# 형식: 템플릿 문자열%(매개변수 목록)

s =  "이름: %s 나이: %d 중국어: %d 수학: %.2f"  % ( "새벽" , 11, 85, 90.5)

인쇄 하다

%s %d %.2f 를   집합적으로 자리 표시자라고 하며, 문자열의 자리 표시자는 괄호 안의 매개 변수로 대체됩니다.

자리 표시자 %s는 해당 위치에 문자열 형식을 채우는 것을 의미하며, 문자열이 아닌 경우 자동으로 변환됩니다.

자리 표시자 %d는 정수 유형으로 채워져야 하며 자동으로 정수로 변환됩니다.

자리 표시자 %f는 부동 소수점 숫자 유형으로 채워져야 하며 자동으로 부동 소수점 숫자로 변환됩니다. %.2f ~ 소수점 이하 2자리 %.5f ~ 소수점 이하 5자리


3. 문자열 이스케이프 문자 \' \"

문자열에 일부 특수 문자가 포함될 수 있습니다.

#s = '당신의 이름은 무엇입니까?'

인쇄(들) 출력 결과?

#s = '당신의 이름은 무엇입니까?'

 

4.  문자열 수정

# 4. 1 문자를 소문자로 변환: string.lower()

s = "안녕하세요 머니"

s = s.lower()

인쇄 하다

# 4. 2 문자를 대문자로 변환: string.upper()

s = s.upper()

인쇄 하다

# 4. 3 첫 글자만 빼고 나머지는 소문자로 변환합니다. 문자열.자본화()

s = s.capitalize()

인쇄 하다

# 4. 4 교체 방법 string.replace(old,new)

s = s.replace( "안녕하세요" , " 좋아요" )

인쇄 하다

# 4. 5 문자 삭제, 스트립()의 기본값은 공백, lstrip()은 왼쪽 끝 삭제 lstrip() 오른쪽 끝 삭제

s = s.strip()        # 기본적으로 양쪽 공백을 삭제합니다.

인쇄 하다

s = s.lstrip( "I" )    # 왼쪽 I를 삭제하도록 지정

s = s.rstrip( "y" )    # 오른쪽 y를 삭제하도록 지정

인쇄 하다


결합된 훈련:

원래 문자열: n= " =YOu123na e-- "는 You,name 으로 변환됩니다.

#1. 문자열에 12가 있는지 찾아 위치를 출력합니다.

# 1. 123을 쉼표로 바꾸고 최신 n을 출력합니다.

#3. 안에 있는 문자를 소문자로 변환하고 최신 n을 출력합니다.

#4.strip()을 사용하여 왼쪽과 오른쪽 끝의 추가 공백을 삭제하고 최신 n개를 출력합니다.

# 4. lstrip()을 사용하여 왼쪽 끝에 있는 기호를 삭제하고 최신 n개를 출력합니다.

#6. rstrip()을 사용하여 오른쪽 끝의 기호를 삭제하고 최신 n을 출력합니다.

#7. 공백을 m으로 바꾸기

#8. 첫 글자를 대문자로 출력


5. 문자열 연결 및 분할

5.1 "커넥터".join(문자열)

z = '-' .join( "안녕하세요" )

y = '#' .join([ "1" , "2" , "3" ])

5.2 String.split('cutting Character') 는 분할 후 목록 형식으로 반환됩니다.

z = z.split( '-' )

인쇄 (z)

5.3 String.split('잘라내는 문자', 잘라낸 횟수)

y = y.split( '#' ,1)

인쇄 (y)

첨부 코드:

#字符串操作:
#1.切片与索引

#2.查找字符串 “=aBc123De h-- ”
# 2.1用 in 函数,判断字符串是否在里面
a = 'aa' in 'acacacacaabaac'
print(a)


# 2.2 用index 找不到就报错,
#b = 'hello world'.index("A")
#print(b)

# 2.3 find查找找不到就返回-1。 用哪个好?
c = 'hello world'.find("A")
print(c)


#3.字符串的格式化
# 格式:模版字符串 % (参数列表)
s = "姓名:%s 年龄:%d 语文:%d 数学:%.2f" % ("黎明", 11, 85, 90.5)
print(s)

'''
%s %d %.2f  统称 占位符,字符串的占位符会被括号的参数代替掉。
占位符 %s,表示在相应位置填字符串类型,不是字符串会被自动转换。
占位符 %d,应填整数类型,自动转为整数。
占位符 %f,应填浮点数类型,自动转为浮点数。%.2f 保留2位小数  %.5f 保留5位小数
'''

#4. 字符串的转义字符 \' \" 
字符串里面可能包含某些特殊字符
#s = 'What's your name?'
print(s) 输出结果?
#s = 'What\'s your name?'



#5. 修改字符串
#5.1 字母转小写:字符串.lower() low 矮的  lower 更高级
s = "Hello MoneY"
s = s.lower()
print(s)
#5.2 字母转大写:字符串.upper()

#5.3 第一个首字母,其他转小写。字符串.capitalize()

#5.4 替换法 字符串.replace(old,new)

#5.5 删除字符, strip() 默认为空格;lstrip() 删除左端 rstrip() 删除右端综合练习:

#字符串: n = " =YOu123na e--    "

n = " =YOu123na e--    "
#1.查找12是否在字符串,并输出位置
a = n.index("12")
print(a)

#2.把123 替换为逗号,并输出最新的n
n = n.replace("123",",")
print(n)

#3.把里面的字母,转为小写,并输出最新的n
n = n.lower()
print(n)

#4.用strip() 删除掉左右两端多余的空格,并输出最新的n
n = n.strip()
print(n)

#5.把左端的符号,用lstrip() 删除掉,并输出最新的n
n = n.lstrip("=")
print(n)

#6.把右端的符号,用rstrip() 删除掉,并输出最新的n
n = n.rstrip('-')
print(n)

#7.把空格替换为m
n = n.replace(" ",'m')
print(n)

#8.首字母大写输出
n = n.capitalize()
print(n)



#六、字符串连接与分割
6.1 "连接符".join(字符串)
z = '-'.join("hello")
y = '#'.join(["one","two","three"])

6.2 字符串.split('切割符') 切完会返回成列表形式
z = z.split('-')
print(z)

6.3 字符串.split('切割符',切割次数)
y = y.split('#',1)
#字符串与列表的互相转换
#1、定义列表值是 [2,3,4,...,11,12]


a = list(range(2,13)) 
print(a)
ls = []
#用join方法  "连接符".join(列表名)
for i in a:
    ls.append(str(i)) 
print(" ".join(ls))

'''
题2:分别输入两个正整数M,N ,输出M到N之间(含M,N )所有可被7整除,
但不是5的倍数的数字,并以逗号分隔按顺序打印在一行。'''

m =int(input())
n = int(input())
li = []
for i in range(m,n+1):
    if i % 7==0 and i%5 != 0:
        li.append(str(i))
print(",".join(li))


'''题3:输入一个正整数 N(N<30),
输出 1 到 N(包含1和N)之间所有正整数的平方,
且所输出的平方数之间以英文逗号隔开。'''

n = int(input())
liebiao = [] 
for i in range(1,n+1):
    a = i * i           # 变量a存平方数,平方数是一个整数
    liebiao.append(str(a)) # 要把整数转为字符串格式,再存到列表
print(",".join(liebiao))  #用join方法把列表转为字符串格式;然后逗号隔开输出
    
    


지식 정제 모듈(11)은 그 이름에 걸맞은 문자열입니다.

1. 다음 명령문을 실행한 후의 출력은 무엇입니까? ( )  

> > > str1='내 이름은 베이징입니다'  

> > > 인쇄(len(str1))  

A、20B、18C、15D、16

2. 문자열 str="maixnm"에는 "min"과 "max"라는 두 단어가 포함되어 있습니다. 다음 중 여기서 "min"을 찾을 수 없는 작업은 무엇입니까? ( )

A. str1=str[0]+str[2]+str[4] B. str1=str[0:-1:2]

C. str1=str[::2] D. str1=str[0:4:2]

3. 원하는 출력은 "제 이름은 Kevin이고 저는 10살입니다."입니다. 다음 중 올바른 옵션은 무엇입니까?( )

A. print('제 이름은 %s이고 나이는 %d세입니다.',%('Kevin',10))

B. print('제 이름은 %s이고 나이는 %d세입니다.'%('Kevin',10))

C. print('내 이름은 %c이고 나이는 %d살입니다.'%('Kevin',10))

D. print('내 이름은 %s이고 나이는 %d세입니다.'%',Kevin',%10))

4. 다음 코드를 실행한 후 결과는 무엇입니까? ( )  

seq=['안녕','좋은','좋은 아침']  

s='*'.join(시퀀스)  

인쇄물)

A、안녕*좋은*아침* B、*안녕*좋은*아침

C、안녕*좋은*아침 D、*안녕*좋은*아침*

옳고 그름 판단 (√ / ×)

5. 문자열 str='www.baidu.com'이고 print(str.split('.',1))의 결과는 다음과 같습니다: ['www', 'baidu', 'com'] . ( )

6.message1='Hello', message1.append('world')의 값은 'Hello world'입니다. ( )

7. Money=8.6675, print("Salary{0:.2f}".format(Money))인 것으로 알려져 있으며 결과는 "Salary 8.67"입니다. ( )

8. 다음 프로그램
a1='hello'
a2='everybody'
print(a1*2+a2)를 실행
하면 결과는 hellohelloeverybody( )입니다.

9. 문자열의 요소는 인덱스로 배치됩니다. 여기서 첫 번째 요소의 인덱스는 0입니다. ( )

10. ('yellow','red','purple')에서 'red'의 결과는 True입니다. ( )


질문 1 : 문자열과 목록을 서로 변환합니다.

a = 목록 ( 범위 (2,13))

t(a)를 인쇄하다

ls = []

#조인 방법 "connector".join(목록 이름) 사용

나는 다음  과  같다:

    ls.append( str (i))

인쇄 ( " " .join(ls))

질문 2 : 두 개의 양의 정수 M과 N을 각각 입력하고 M과 N 사이(M, N 포함)에서 7로 나누어지는 모든 숫자를 출력합니다.

단, 5의 배수가 아닌 숫자는 쉼표로 구분하여 한 줄에 순차적으로 인쇄됩니다.

샘플 입력:

100

147

샘플 출력:

112,119,126,133,147

M = int ( 입력 ())

N = int ( 입력 ())

li= [] # 빈 목록을 정의합니다

for  i in  range (M, N+1): #M부터 N번까지 반복

    if  i % 7 == 0 and  i % 5 != 0: #조건이 충족되었나요?

        li.append( str (i))   # 조건에 맞는 값을 목록에 추가

인쇄 ( "," .join(li))

질문 3 : 양의 정수 N(N<30)을 입력하고, 1과 N(1과 N 포함) 사이의 모든 양의 정수의 제곱을 출력하고, 출력된 제곱 숫자는 쉼표로 구분됩니다.

입력설명 : 양의 정수 N을 입력하세요 (N<30)

출력 설명 : 1과 N 사이의 모든 양의 정수의 제곱수를 출력하고, 제곱수 출력은 사이입니다.

쉼표로 구분.

[샘플 입력]

[샘플 출력]

1,4,9

 

n = int ( 입력 ())

리비아오 = []

(1,n+1) 범위 에 있는   i 의 경우 :

    a = i * i                            # 변수 a는 정수인 제곱수를 저장합니다.

    liebiao.append( str (a))   # 정수를 문자열 형식으로 변환한 후 목록에 저장합니다.

print ( "," .join(liebiao))       # 조인 메서드를 사용하여 목록을 문자열 형식으로 변환한 다음 출력을 쉼표로 구분합니다.


рекомендация

отblog.csdn.net/weixin_44775255/article/details/128205063
рекомендация