2021 1 28 day8 字串作業

2021-10-18 04:30:24 字數 3452 閱讀 9878

輸入乙個字串,列印所有奇數字上的字元(下標是1,3,5,7…位上的字元)

例如: 輸入**'abcd1234 』 ** 輸出**『bd24』**

str1 = 'abcd1234'

new = [x for x in str1[1:len(str1)+1:2]]

print((''.join(new)))

輸入使用者名稱,判斷使用者名稱是否合法(使用者名稱長度6~10位)

name = input('輸入使用者名稱:')

if 6 <= len(name) <= 10:

print('合法')

else:

print('不合法')

輸入使用者名稱,判斷使用者名稱是否合法(使用者名稱中只能由數字和字母組成)

例如:『abc』— 合法『123』— 合法『abc123a』— 合法

name = input('輸入使用者名稱:')

for x in name:

if ('0' <= x <= '9' or 'a' <= x <= 'z' or 'a' <= x <= 'z'):

print('合法')

else:

print('不合法')

輸入使用者名稱,判斷使用者名稱是否合法(使用者名稱必須包含且只能包含數字和字母,並且第乙個字元必須是大寫字母)

例如:『abc』— 不合法『123』— 不合法『abc123』— 不合法『abc123ahs』— 合法

name = input('輸入使用者名稱:')

for x in name[1:]:

if 'a'<=name[0] <='z' and ('0' <= x <= '9' or 'a' <= x <= 'z' or 'a' <= x <= 'z'):

print('合法')

else:

print('不合法')

輸入乙個字串,將字串中所有的數字字元取出來產生乙個新的字串

例如:輸入**『abc1shj23kls99+2kkk』** 輸出:'123992』

str1 = input('輸入字串:')

new = [ x for x in str1 if '0'<= x <='9']

print(''.join(new))

輸入乙個字串,將字串中所有的小寫字母變成對應的大寫字母輸出 (用upper方法和自己寫演算法兩種方式實現)

例如: 輸入**『a2h2klm12+』 ** 輸出'a2h2klm12+'

法一:

str1 = input('輸入字串:')

new = [ x.upper() if 'a'<= x <='z' else x for x in str1 ]

print(''.join(new))

法二:str1 = input('輸入字串:')

new = [ chr(ord(x)-32) if 'a'<= x <='z' else x for x in str1 ]

print(''.join(new))

輸入乙個小於1000的數字,產生對應的學號

例如: 輸入**『23』,輸出』py1901023』** 輸入**『9』, 輸出』py1901009』** 輸入**『123』,輸出』py1901123』**

a = 'py1901'

b = int(input('輸入數字:'))

c = ''.format(b)

print(a,c)

輸入乙個字串,統計字串中非數字字母的字元的個數

例如: 輸入**『anc2+93-sj胡說』** 輸出:4輸入**』===』** 輸出:3

str1 = input("輸入字串:")

print(len([x for x in str1 if not ('a' <=x <='z' or 'a'<= x <='z' or '0'<=x<='9')]))

輸入字串,將字串的開頭和結尾變成』+』,產生乙個新的字串

例如: 輸入字串**『abc123』, 輸出』+bc12+』**

str1 = input("輸入字串:")

print('+'+str1[1:-1]+'+')

輸入字串,獲取字串的中間字元

例如: 輸入**『abc1234』** 輸出:『1』輸入**『abc123』** 輸出**『c1』**

str1 = input("輸入字串:")

a = len(str1)

if a & 1:

str1_index = int((a+1)/2)

print(str1[str1_index-1])

else:

str1_index = int(a/2)

print(str1[str1_index-1], str1[str1_index])

寫程式實現字串函式find/index的功能(獲取字串1中字串2第一次出現的位置)

例如: 字串1為:how are you? im fine, thank you!, 字串2為:you, 列印8

str1 = 'how are you? im fine, thank you!'

str2 = 'you'

for x in range(len(str1)):

if str1[x] == str2[0]:

print(x)

break

獲取兩個字串中公共的字元

例如: 字串1為:abc123, 字串2為:huak3, 列印:公共字元有:a3

str1 = set('abc123')

str2 = set('huak3')

common = str1 & str2

print(''.join(common))

2021 1 28 day8 字串作業

輸入乙個字串,列印所有奇數字上的字元 下標是1,3,5,7 位上的字元 例如 輸入 abcd1234 輸出 bd24 str1 abcd1234 new x for x in str1 1 len str1 1 2 print join new 法二 str1 abcd1234 print str1...

day8 字串作業

輸入乙個字串,列印所有奇數字上的字元 下標是1,3,5,7 位上的字元 例如 輸入 abcd1234 輸出 bd24 str1 abcd1234 list1 y for x,y in enumerate str1 if x 2 0 print join list1 輸入使用者名稱,判斷使用者名稱是否...

day8 字串作業

輸入乙個字串,列印所有奇數字上的字元 下標是1,3,5,7 位上的字元 例如 輸入 abcd1234 輸出 bd24 str1 abcd1234 str2 for a in range len str1 if a 1 str2 str1 a print str2 輸入使用者名稱,判斷使用者名稱是否合...