1,给定一个包含n+1个整数的数组nums,其数字在1到n之间(包含1和n),可知至少存在一个 重复的整数,假设只有一个重复的整数,请找出这个重复的数
2、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
for i in range(1,10001):
if i%6==0 or i%5!=0 and i%30!=0:
print(i)
def print_fuhe(n):
for i in range(1,n+1):
if (i%5 ==0 or i%6==0) and not (i%5 ==0 and i%6==0):
print(i)
n = int(input("输入需要处理的范围从0开始:"))
print_fuhe(n)
3、写一个方法,计算列表所有偶数下标元素的和(注意返回值)
def print_sum(ls):
sum = 0
i = 0
while i < len(ls):
sum += ls[i]
i += 2
return sum
ls = [1,2,3,4,5]
print("列表是:{},偶数下标元素和是:{}".format(ls,print_sum(ls)))
4、请使用函数完成选择、冒泡、插入三种排序
冒泡
选择
插入
5.根据完整的路径从路径中分离文件路径、文件名及扩展名
分离文件路径与文件名
分离文件名与后缀
6.获取字符串中汉字的个数
str=input("请输入一串字符:")
resoult={}
for i in str:
resoult[i]=str.count(i)
print(resoult)
7.将字母全部转换为大写或小写
str = input('请输入随机的一组字符')
print(str.upper()) # 把所有字符中的小写字母转换成大写字母
print(str.lower()) # 把所有字符中的大写字母转换成小写字母
8.根据标点符号对字符串进行分行
string=input("请输入数据\n")
fuhao=input("请输入要分行的符号")
string=string.split(',')
print(string)
for i in string:
print(i)
9.去掉字符串数组中每个字符串的空格
str = " Hello world "
str.replace(" ","")
10.随意输入你心中想到的一个书名,然后输出它的字符串长度(len()属性:可以得字符串的长度)
book=str(input("请输入书名:"))
print(len(book))
11.两个学员输入各自最喜欢的游戏名称,判断是否一致,如果相等,则输出你们俩喜欢相同的游 戏;如果不相同,则输出你们俩喜欢不相同的游戏。
a=str(input("请输入游戏:"))
b=str(input("请输入游戏:"))
if a == b :
print(a,'游戏一样')
else:
print(a,b)
12.上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?
game1=str(input("请输入游戏名称:"))
game2=str(input("请输入游戏名称:"))
if game1.upper() == game2.upper():
print("游戏一样")
else:
print("游戏不一样")
13.让用户输入一个日期格式如“2008/08/08”,将 输入的日期格式转换为“2008年-8月-8日”。
time=input("请输入日期:(格式)2009/08/08")
s1=time.split("/")
newtime="{}年-{}月-{}日".format(s1[0],int(s1[1]),int(s1[2]))
print(newtime)
14.接收用户输入的字符串,将其中的字符进行排序(升序),并以逆序的顺序输出,“cabed” →"abcde"→“edcba”。
ls='cabed'
l=list(ls)
l.sort()
print(l)
l.reverse()
print(l)
15.接收用户输入的一句英文,将其中的单词以反序输出,“hello c sharp”→“sharp c hello”。
english=input("请输入一句英文:")
a=english.split(" ")
b=a[::-1]
a1=" ".join(b)
print(a1)
16.从请求地址中提取出用户名和域名http://www.163.com?userName=admin&pwd=123456
url='http://www.163.com?userName=admin&pwd=123456'
ls = url.split("/")
s1 = ls[2]
ls2 = s1.split("?")
print("域名是:{}".format(ls2[0]))
s1 = ls2[1]
ls3 = s1.split("&")
s1 = ls3[0]
ls4 = s1.split("=")
print("用户名是:{}".format(ls4[1]))
17.有个字符串数组,存储了10个书名,书名有长有短,现在将他们统一处理,若书名长度大于 10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。
ls = ["我的世界没能和你在一起","遥远的老天爷","红尘往市我与你同在天涯","活着","白鹿原之青青草原112"]
##10个书名太多了,我只存了几个
dir = {"我的世界没能和你在一起":"马利华","遥远的老天爷":"马儿","红尘往市我与你同在天涯":"小马","活着":"萧红","白鹿原之青青草原112":"张"}
for i in range(0,len(ls)):
s = ls[i]
if len(s) > 10:
s = s[0:9]+"...——"+str(dir[ls[i]])
ls[i] = s
print(ls)
18.让用户输入一句话,找出所有"呵"的位置。
s = input("请输入一段话!")
ls = []
for i in range(0,len(s)):
if s[i] == "呵":
ls.append(i)print("呵的位置是%s"%ls)
19.让用户输入一句话,找出所有"呵呵"的位置。
s = input("请输入一段话!")
ls = []
for i in range(0,len(s)-1):
if s[i] == "呵" and s[i+1]=="呵":
ls.append(i)
print("呵呵的位置是%s"%ls)
20.让用户输入一句话,判断这句话中有没有邪恶,如果有邪恶就替换成这种形式然后输出,如:“老牛很 邪恶”,输出后变成”老牛很**”;
s = input("请输入字符串:")
print("邪恶消失后:{}".format(s.replace("邪恶","**")))
21.如何判断一个字符串是否为另一个字符串的子串
find()
index()
双层循环完成
??
s = input("请输入字符串A:")
s1 = input("请输入需要判断的字符串B:")
flag = True
if s.find(s1) != -1:
flag = False
if flag:
print("字符串B:{}不在A{}内".format(s1,s))
else:
print("字符串B:{}在A{}内".format(s1,s))
22.如何验证一个字符串中的每一个字符均在另一个字符串中出现过双层循环s = input("请输入字符串A:")
s1 = input("请输入需要判断的字符串B:")
flag = True
for i in range(0,len(s1)):
if s.find(s1[i]) == -1:
flag = False
if flag:
print("字符串B:{}的所有元素在A{}内".format(s1,s))
else:
print("字符串B:{}不是所有元素都在A{}内".format(s1,s))
23.如何随机生成无数字的全字母的字符串
import string
import random
s = string.ascii_letters
s1 = ""
for i in range(1,20):
s1 += random.choice(s)
print(s1)
24.如何随机生成带数字和字母的字符串
import string
import random
s = string.ascii_letters + string.digits ##前为生成字母,后为生成数字
s1 = ""
for i in range(1,20):
s1 += random.choice(s)
print(s1)
25.如何判定一个字符串中既有数字又有字母
import string
s = input("输入需要判断的字符串:")
if (s.isalnum()and not s.isalpha()) and not s.isdigit():
print("字符串{}里包含数字和字母".format(s))
else:
print("字符串{}里并不是既包含字母又包含数字".format(s))
26.字符串内的字符排序(只按字母序不论大小写)
s = input("请输入字符串")
s1 = s.upper()
ls = list(s1)
ls.sort()
s2 = ""
for i in range(0,len(ls)):
s2 += ls[i]
print(s2)
27.判断一个字符是否是回文字符串(面试题)
"1234567654321"
"上海自来水来自海上"
def is_plalindrome(content):
"""
通过双指针判断一个字符串是否是回文字符串
"""
for i in range(len(content)//2):
if content[i] != content[len(content) - 1 - i]:
return False
return True if __name__ == '__main__':
msg = "上海自来水来自海上"
res = is_plalindrome(msg)
if res:
print("是一个回文字符串")
else:
print("不是一个回文字符串")