作业1:给定一个包含n+1个整数的数组nums,其数字在1到n之间(包含1和n),
可知至少存在一个重复的整数,假设只有一个重复的整数,请找出这个重复的数
4、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
5、写一个方法,计算列表所有偶数下标元素的和(注意返回值)
7、请使用函数完成选择、冒泡、插入三种排序
def bubble_sort(aList):
n = len(aList)
for i in range(0, n - 1):
for j in range(0, n - i - 1):
if aList[j] > aList[j + 1]:
aList[j], aList[j + 1] = aList[j + 1], aList[j]
if __name__ == "__main__":
li = [54, 26, 93, 17, 77, 31, 44, 55, 20]
print(li)
bubble_sort(li)
print(li)
'''
选择排序
'''
def select_sort(aList):
l = len(aList)
for j in range(l):
min_index = j
for i in range(min_index + 1, l):
if aList[min_index] > aList[i]:
min_index = i
aList[j], aList[min_index] = aList[min_index], aList[j]
if __name__ == "__main__":
li = [9 , 16, 17, 15, 11]
print(li)
select_sort(li)
print(li)
8.根据完整的路径从路径中分离文件路径、文件名及扩展名
9.获取字符串中汉字的个数
10.将字母全部转换为大写或小写
def get_r(n):
lz = n.r('。','\n')
print(lz)
n = input('请输入一串带‘。’的字符串:')
get_replace(n)
11.根据标点符号对字符串进行分行
def get_r(n):
lz = n.r('。','\n')
print(lz)
n = input('请输入一串带‘。’的字符串:')
get_replace(n)
12.去掉字符串数组中每个字符串的空格
#def out_space(s):
a = ‘’
for i in s:
if i != ’ ':
a += i
return a
#num=input(“请输入一个字符串”)
#res=out_space(num)
#print(res)
13.随意输入你心中想到的一个书名,然后输出它的字符串长度。 (len()属性:可以得字符串的长度)
14.两个学员输入各自最喜欢的游戏名称,判断是否一致,如
果相等,则输出你们俩喜欢相同的游戏;如果不相同,则输
出你们俩喜欢不相同的游戏。
#s1 = input(“你喜欢的游戏名字:”)
#s2 = input(“他最喜欢的游戏名字:”)
#if s1 == s2:
print(“你们最喜欢的游戏是:{}”.format(s1))
#else:
print(“你最喜欢的游戏是:{}”.format(s1))
print(“他最喜欢的游戏是:{}”.format(s2))
15.上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?
#s1 = input(“你喜欢的游戏名字:”)
#s2 = input(“他最喜欢的游戏名字:”)
#s1 = s1.upper()
#s2 = s2.upper()
#if s1 == s2:
print(“你们最喜欢的游戏是:{}”.format(s1))
#else:
print(“你最喜欢的游戏是:{}”.format(s1))
print(“他最喜欢的游戏是:{}”.format(s2))
16.让用户输入一个日期格式如“2008/08/08”,将 输入的日
期格式转换为“2008年-8月-8日”。
#s = input(“请输入日期,格式如2008/02/02:”)
#ls = s.split("/")
#print(“转换后的日期格式:{}年{}月{}日”.format(ls[0],ls[1],ls[2]))
17.接收用户输入的字符串,将其中的字符进行排序(升
序),并以逆序的顺序输出,“cabed”→"abcde"→“edcba”。
18.接收用户输入的一句英文,将其中的单词以反序输
出,“hello c sharp”→“sharp c hello”。
#s = input(“请输入字符串”)
#ls = list(s)
#ls.sort()
#ls.reverse()
#s = “”
#for i in range(0,len(ls)):
s += ls[i]
#print(s)
19.从请求地址中提取出用户名和域名
http://www.163.com?userName=admin&pwd=123456
#s = “http://www.163.com?userName=admin&pwd=123456”
#ls = s.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]))
##用分割方法。
#print(“域名是:{},用户名是:{}”.format(s[s.rfind("/")+1:s.find("?")],s[s.find("=")+1:s.find("&")]))
20.有个字符串数组,存储了10个书名,书名有长有短,现
在将他们统一处理,若书名长度大于10,则截取长度8的
子串并且最后添加“...”,加一个竖线后输出作者的名字。
21.让用户输入一句话,找出所有"呵"的位置。
#s = input(“请输入一段话!”)
#ls = []
#for i in range(0,len(s)):
if s[i] == “呵”:
ls.append(i)
#print(“呵的位置是:{}”.format(ls))
22.让用户输入一句话,找出所有"呵呵"的位置。
23.让用户输入一句话,判断这句话中有没有邪恶,如果有邪
恶就替换成这种形式然后输出,如:“老牛很邪恶”,输出后变
成”老牛很**”;
24.如何判断一个字符串是否为另一个字符串的子串
find()
index()
双层循环完成
??
25.如何验证一个字符串中的每一个字符均在另一个字符串
中出现过
双层循环
26.如何随机生成无数字的全字母的字符串
import string
import random
s = string.ascii_letters
s1 = “”
for i in range(1,20):
s1 += random.choice(s)
print(s1)
27.如何随机生成带数字和字母的字符串
import string
import random
s = string.ascii_letters + string.digits ##前为生成字母,后为生成数字
s1 = “”
for i in range(1,20):
s1 += random.choice(s)
print(s1)
28.如何判定一个字符串中既有数字又有字母
import string
s = input(“输入需要判断的字符串:”)
if (s.isalnum()and not s.isalpha()) and not s.isdigit():
print(“字符串{}里包含数字和字母”.format(s))
else:
print(“字符串{}里并不是既包含字母又包含数字”.format(s))
29.字符串内的字符排序(只按字母序不论大小写)
s = input(“请输入字符串”)
s1 = s.upper()
ls = list(s1)
ls.sort()
s2 = “”
for i in range(0,len(ls)):
s2 += ls[i]
print(s2)
30.判断一个字符是否是回文字符串(面试题)
"1234567654321"
"上海自来水来自海上"