第一部分day2-for、while、数据类型(字符串、列表、元组)
数据类型
数据类型的初识
1、数字
整数 int (integer)
整型 (注:python3 不区分整型和长整型,统一称之为整型)
长整型
float(浮点型)
complex(复数) 是由实数和虚数组成
2、布尔值(布尔值只有两种状态,分别是True和False) 3、字符串
4、列表、元组
列表
查
索引(下标) ,都是从0开始
切片
.count 查某个元素的出现次数
.index 根据内容找其对应的位置
in
增加
a.append() 追加
a.insert(index, "内容")
a.extend 扩展 修改
a[index] = "新的值"
a[start:end] = [a,b,c] 删除
remove("内容")
pop(index)
del a, del a[index]
a.clear() 清空 排序
sort ()
reverse() for循环,while循环,continue,break 循环
有限循环
无限循环
#占位符
name = input("Name:")
age = input("Age:")
if age.isdigit(): #判断是否是数字
age = int(age)
job = input("Job:")
salary =input("Salary:")
if salary.isdigit():
salary = int(salary)
#格式化输出
%s s = string 字符串
%d d = digit 整数
%f f = float 约定于浮点数
#输出100以内的奇数项
for i in range(1,101):
#for i in range(1,101,2): #2表示步长
if i % 2 == 1:
print("loop:%s" % i)
for循环
user = 'dream'
passwd = 'abc123'
flag = False
for i in range(3):
username = input("Username:")
userpasswd = input("Userpassword:")
if username == user and userpasswd == passwd:
print("Welcome %s Login..." % username)
flag = True
break
else:
print("Invald username or password!") if not flag:
print("输入多次错误")
user = 'dream'
passwd = 'abc123' for i in range(3):
username = input("Username:")
userpasswd = input("Userpassword:")
if username == user and userpasswd == passwd:
print("Welcome %s Login..." % username)
break #break for过后,就不会执行最后面的
else:
print("Invald username or password!") else: #只要上面的for循环正常执行完毕,中间没被打断,就会执行else语句
print("输入多次错误")
while 循环
user = 'dream'
passwd = 'abc123'
counter = 0
while counter < 3: #当while 后面的成立(True),才会执行下面的代码
username = input("Username:")
userpasswd = input("Userpassword:")
if username == user and userpasswd == passwd:
print("Welcome %s Login..." % username)
break
else:
print("Invald username or password!")
counter += 1
if counter == 3:
user_choice = input("是否想继续玩[y/n]")
if user_choice == "y":
counter = 0
else:
print("输入多次错误")
for循环、标志位
flag = False
for i in range(10):
if i > 5 :
continue #结束本循环,进行下一次
#break #跳出整个当前循环
if i == 3:
flag = True if flag:
break
print(i)
列表讲解、切片、内置方法
a = ['dog','monkey','pig','chicken','duck']
#查
print(a[3]) #chicken 其中[3]数字3为索引值,输出结果chicken #切片
print(a[2:]) #['pig', 'chicken'] 其中[2:],取到最后一个值,输出结果['pig', 'chicken', 'duck']
print(a[1:4]) #输入出结果,['monkey', 'pig', 'chicken']
print(a[1:-1]) #取到倒数第二值,输入出结果 ['monkey', 'pig', 'chicken']
print(a[1:-1:2]) #2表示切片从左到右步长,输入出结果 ['monkey', 'chicken']
print(a[4::-1]) #从右向左,输出结果['duck', 'chicken', 'pig', 'monkey', 'dog']
print(a[-1::-1]) #从右向左,输出结果['duck', 'chicken', 'pig', 'monkey', 'dog'] #增加
a.append('sheep') #默认添加到最后一个位置
print(a) #['dog', 'monkey', 'pig', 'chicken', 'duck', 'sheep']
a.insert(1,'lion') #将数据插入到任意一个位置
print(a) #['dog', 'lion', 'monkey', 'pig', 'chicken', 'duck'] #修改
a[0] = 'lion' #赋值替换
print(a) #['lion', 'monkey', 'pig', 'chicken', 'duck']
a[1:3] = ['x','y']
print(a) #['lion', 'x', 'y', 'chicken', 'duck'] #删除
a.remove('pig') #通过值删除其中指定的值
print(a) #['dog', 'monkey', 'chicken', 'duck'] print(a)
b = a.pop(0) #数字0为索引值,删除索引值为0的'dog',并返回值
print(b)
print(a)#['monkey', 'pig', 'chicken', 'duck'] print(a)
b = a.pop() #[].pop()默认删除列表中最后一个,并返回值
print(b)
print(a) #['dog', 'monkey', 'pig', 'chicken']
del a[0]
print(a) #['monkey', 'pig', 'chicken', 'duck']
del a
print(a) #NameError: name 'a' is not defined 列表方法
count 计算元素出现次数
a = ['A','B','A','C']
print(a.count('A')) #2 extend 两个列表扩展
a = ['A','B','A','C']
b = ['D','F']
a.extend(b)
print(a) #['A', 'B', 'A', 'C', 'D', 'F'] #index 通过元素查找索引值(根据内容找位置)
a = ['A', 'B', 'A', 'C', 'D', 'F']
print(a.index('C')) #3 #查询列表中第二个重复的元素
a = ['A', 'B', 'A', 'C', 'D','B' ,'F']
first_index = a.index('B')
print("first_index:%s" % first_index) # first_index:1 little_list = a[first_index+1:].index('B') #切片
second_index = first_index+little_list+1
# print(second_index)
print("second_index:%s" % second_index) #second_index:5 reverse#倒序排列(从大到小排序)
a = ['A', 'B', 'A', 'C', 'D', 'F']
a.reverse()
print(a) #['F', 'D', 'C', 'A', 'B', 'A'] sort#从小到大排序
a = [4,3,6,2,5,1,8,9,5]
a.sort()
print(a) #[1, 2, 3, 4, 5, 5, 6, 8, 9] #从大到小排序
a = ['a','b','A','C','f','g','Z','y','q']
a.sort(reverse=True)
print(a) #['y', 'q', 'g', 'f', 'b', 'a', 'Z', 'C', 'A']
第一部分day2-for、while、数据类型(字符串、列表、元组)的更多相关文章
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- python字符串列表元组序列操作
Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列通用操作 访问单个元素 切片访问一部分元素 序列的复 ...
- day5_python学习笔记_chapter6_字符串列表元组
1. 序列:seq[n], seq[x:y], seq * n序列重复n次,切片, 序列翻转 s=”abcde", s[::-1]="edcba" 内建函数:1. 类型转 ...
- python基础数据类型之列表,元组操作
一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...
- python中的基本数据类型之列表,元组
一.列表 1.什么是列表. 列表是python的基本数据类型之一,用[]来表示,可以存放各种数据类型(什么都能装,能装对象的对象) 列表相比于字符串,不仅可以存放不同类型的数据,而且可以存放大量的数据 ...
- python字符串/列表/元组/字典之间的相互转换(5)
一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...
- python 字符串,列表,元组,字典相互转换
1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...
- 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作
声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/ 模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...
- Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...
随机推荐
- 【redis】安装redis
1.什么是redis? 非关系型数据库 2.为什么用redis? 非关系型数据库的一些优势,我这里用于缓存 3.怎么用redis? 安装,配置,用 4.怎么安装? 下载:http://download ...
- Python面向对象 | 鸭子方法
鸭子类型 如果看起来像.叫声像而且走起路来像鸭子,那么它就是鸭子’.python程序员通常根据这种行为来编写程序.例如,如果想编写现有对象的自定义版本,可以继承该对象,也可以创建一个外观和行为像,但与 ...
- nowcoder907B n的约数
题意 t次询问,每次给你一个数n,求在[1,n]内约数个数最多的数的约数个数 \(t \le 500,n \le 10^{19}\) 思路 首先可以想到将n质因数分解.即\(n= \prod\limi ...
- 洛谷 P3742 umi的函数
传送门 思路 \(loceaner\)已经蔡虚鲲到连红题都不会做了 因为有\(special\ judge\)所以我们就可以瞎搞了! 由题目可知,只要有一个\(y[i] > x[i]\)则一定没 ...
- PATB1033 旧键盘打字 (20 分)
一.技术总结 使用字符数组出现段错误即char str[];改成string str:后问题解决.以后尽量使用C++中的string 使用cin>>,出现答案错误,原因可能是在输入是有空格 ...
- HDU 4005 The war(边双连通)
题意 给定一张 \(n\) 个点 \(m\) 条边的无向连通图,加入一条边,使得图中权值最小的桥权值最大,如果能使图中没有桥则输出 \(-1\). 思路 先对原图边双缩点,然后变成了一棵树.在 ...
- ASP.NET Core基于微软微服务eShopOnContainer事件总线EventBus的实现
这个EventBus的实现是基于微软微服务https://github.com/dotnet-architecture/eShopOnContainers项目的,我把它从项目中抽离出来,打包成nuge ...
- 在Visual Studio中新增生成项目
在Visual Studio中新增生成项目 选择适配器类型 选择WCF-SQL适配器 创建连接选项 选择相应的存储过程 生成相应的消息架构
- PyQt5笔记之菜单栏
目录 菜单栏 创建单层菜单 创建多层菜单 右键打开菜单 官方菜单实例 菜单常用方法 菜单栏 创建单层菜单 import sys from PyQt5.QtWidgets import QApplica ...
- iOS block疑难解答
1,为什么需要加__block ARC环境下,一旦Block赋值就会触发copy,__block就会copy到堆上,Block也是__NSMallocBlock.ARC环境下也是存在__NSStack ...