Python练习(2)
1、把用户输入的特殊字符转换成数字,把小写字母转大写,大写转小写,数字转特殊字符
单个字符的
import re
a = input("请输入:")
if a.isupper():
a = a.lower()
if a.islower():
a = a.upper()
if re.findall('\W', a):
a = ord(a)
if re.findall('\d', a):
a = chr(int(a))
print('---------------------')
print(a)
多个字符
import re
a = input("请输入:")
l = []
for i in range(len(a)):
l.append(a[i])
print(l)
for j in range(len(l)):
if l[j].isupper():
l[j] = l[j].lower()
if l[j].islower():
l[j] = l[j].upper()
if re.findall('\W', l[j]):
l[j] = ord(l[j])
elif re.findall('\d', l[j]):
l[j] = chr(int(l[j]))
print(l[j],end=' ')
2、用户输入一长串字符 统计单词出现的次数
a = input("请输入:")
b = a.split(" ")
sum = 0
for i in range(len(b)):
if b[i].isalpha() == True:
sum += 1
print(sum)
3、用户输入多个单词,按照字母顺序进行排序
a = input("请输入单词,用空格隔开:")
b = a.split(" ")
l = []
for i in range(len(b)):
if b[i].isalpha() == True:
l.append(b[i])
l.sort()
for i in range(len(l)):
print(l[i],end=" ")
4、生成N*M的矩阵,并且将矩阵逆时针反转90度,用Random随机函数,随机生成矩阵里面的数字,矩阵大小随机生成
import numpy
a = int(input("输入行数N:"))
b = int(input("输入列数M:"))
N = numpy.random.randint(0, 10, (a, b))
print(N)
c = [i for i in N]
l = []
for i in c:
for j in i:
l.append(j)
for i in range(len(l)):
if i <= b - 1:
print(l[b - i - 1:a * b:b])
5、建立一个矩阵M*N,里面的数字用random随机生成。判断是否存在一个数,并输出该数在矩阵中的(X,Y)位置。
import numpy
a = int(input("输入行数N:"))
b = int(input("输入列数M:"))
N = numpy.random.randint(0, 10, (a, b))
print(N)
c = int(input("输入要确认的数:"))
print("数字所在的位置为:")
for i in range(a):
for j in range(b):
if N[i][j] == c:
print('(' + str(i + 1) + ',' + str(j + 1) + ')',end=' ')