基本数据类型(While循环,For循环,列表以及相关用法)

正常在没有学习循环情况下,我们要输出同样的语句,需要重复打印。相当重要!!!!

While循环

将输出放在一行 end=""默认是换行

1 print("Hello World.", end="  ")
2 print("Hello World.", end="  ")
3 print("Hello World.", end="  ")

但是这样不仅耗时也耗力,所以,在Python中同样也加入的循环

循环输出偶数 num=1

1 while num <= 100:
2     if num % 2 == 0:
3         print(num)
4         num += 1
5     num += 1
循环输出奇数
1 num2 = 1
2 while num2 <= 100:
3     if num2 % 2 == 1:
4         print(num2)
5         num2 += 1
6     num2 += 1
猜数字游戏
 1 age = 50
 2 while True:
 3     user_input_age = int(input("Age is:"))
 4     if user_input_age == age:
 5         print("Yes")
 6         print("End")
 7         break
 8     elif user_input_age > age:
 9         print("Is bigger")
10     elif user_input_age < age:
11         print("Is smaller")

 For循环

 打印 5,6,7,8,9
1 exit_flag = False
2 
3 for i in range(10):
4     if i < 5:
5         continue #i < 5不打印,结束本次循环,继续下一次循环
6     print(i)

For循环嵌套

 1 for i in range(10):
 2     if i < 5:
 3         continue
 4     print(i)
 5     for j in range(10):
 6         print("layer2",j)
 7         if j ==6:
 8             exit_flag =True
 9             break
10     if exit_flag:
11         break

列表

在生活中有时候我们常常会遇到大量的名字,序号什么的字符串,的确是可以做到存储,但取的时候不方便,这时候我们就引进的Python中另一个数据类型 列表。也十分重要!!!!!!!
比如将一个班人的名字储存在列表中
1 names_list=['xiaohu','jinxin','wuchao','sanpang','ligang']
比如要在上面列表中取出‘xiaohu’
 1 print(names_list[0]) 
列表中有关查的用法:
1 print(names_list[1:3]) #左包括 右不包括 ['jinxin', 'wuchao']
2 print(names_list[1:]) #右边什么都不加,取到最后一个 ['jinxin', 'wuchao', 'sanpang', 'ligang']
3 print(names_list[1:-1]) #右边是-1,取到最后前一个 ['jinxin', 'wuchao', 'sanpang']
4 print(names_list[1:-2]) #['jinxin', 'wuchao']
5 print(names_list[1:-1:1]) #从左到右一个一个去取 ['jinxin', 'wuchao', 'sanpang']
6 print(names_list[1::2]) #从索引值为1的加2取 ['jinxin', 'sanpang']
7 print(names_list[3::-2]) #正负代表方向 ['sanpang', 'jinxin']
8 b=names_list[3::-1] #['sanpang', 'wuchao', 'jinxin', 'xiaohu']
9 print(b) #['sanpang', 'wuchao', 'jinxin', 'xiaohu']
列表中增加的方法 append追加 insert
1 names_list.append('xuepeng') #默认在最后面添加一个['xiaohu', 'jinxin', 'wuchao', 'sanpang', 'ligang', 'xuepeng']
2 print(names_list)
3 
4 names_list.insert(0,"luoxue") #将0的位置插入为luoxue,insert将数据插入到任意位置
5 print(names_list)

对列表里的内容进行修改

1 names_list[2]='haidilao' #直接赋值操作进行修改 
2 print(names_list)  # ['luoxue', 'xiaohu', 'haidilao', 'wuchao', 'sanpang', 'ligang', 'xuepeng']
3 names_list[1:3]=['a','b']  # ['luoxue', 'a', 'b', 'sanpang', 'ligang', 'xuepeng']
4 # print(names_list)

对列表中的内容进行删除 remove pop del clear清空

1 names_list.remove('wuchao') #直接删除内容,后面的向前移
2 print(names_list)
3 b=names_list.pop(1) #pop可以删除对应索引的值,并且可以返回得到删除的值 b
4 print(names_list)
5 print(b)
6 del names_list[0] #既可以删除里面内容,也可以把整个对象删除
7 print(names_list)
8 names_list.clear()
9 print(names_list) #[]
身份判断 判断是不是列表
 1 type(names_list) is list # 在命令行中输出True 
列表其他相关用法
ount用法 计算列表元素出现的次数
1 list = ['to','be','or','not','to','be']
2 a=list.count('to')
3 print(a)
extend 将b加入到a后面,不影响b本身
1 a = [1,2,3]
2 b = [4,5,6]
3 a.extend(b) # a变 ,b不变
4 print(a) #[1, 2, 3, 4, 5, 6]
5 print(b) #[4, 5, 6]
ndex 得到元素在列表中的索引位置,根据内容找位置

 1 names_list=['xiaohu','jinxin','wuchao','ligang','sanpang','a','ligang','b']
 2 
 3 first_lg_index = names_list.index("ligang")
 4 print("first_lg_index",first_lg_index) # 3
 5 
 6 
 7 little_list = names_list[first_lg_index+1:] # ['sanpang','a','ligang','b']
 8 
 9 second_lg_index = little_list.index("ligang") # 2
10 print("second_lg_index",second_lg_index)
11 
12 second_li_index_in_big_list = first_lg_index + second_lg_index + 1
13 print("second_li_index_in_big_list",second_li_index_in_big_list)
14 print("second lg:",names_list[second_li_index_in_big_list]) #取到第二个ligang
15 print(names_list.index('jinxin'))
reverse 将列表倒过来
1 names_list=['xiaohu','jinxin','wuchao','ligang','sanpang','a','ligang','b']
2 names_list.reverse()
3 print(names_list)
sort 排序
1 x=[4,6,3,1,7,9]
2 x.sort(reverse=True) #sort函数里有一个reverse方法,自动从大到小排序
3 print(x) #[9, 7, 6, 4, 3, 1]names_list=['xiaohu','jinxin','wuchao','ligang','sanpang','a','ligang','b']
4 print("haidilao ge"in names_list) #返回Flase 表示不在
5 names_list=['xiaohu','jinxin','wuchao','Ligang','sanpang','a','ligang','b']
6 names_list.sort()
7 print(names_list) #也可以对字符串按照ASCALL码进行排序 ['Ligang', 'a', 'b', 'jinxin', 'ligang', 'sanpang', 'wuchao', 'xiaohu']

 

 
 

 

 
 


 

 
 

 

 
 

 

posted @ 2019-07-07 13:04  Xiaohu_BigData  阅读(855)  评论(0编辑  收藏  举报