Pythonp篇(数据类型与流程控制)

一.数值型

1.整形(int)

Python2中分为长整型(long),整形(int),短整形(short)
Python3中只有整形,不分长短型
使用type()查看数据类型

>>> a = 77777
>>> print(type(a))
<type 'int'>

2.浮点型(float)

浮点型数值用于保存带小数点的数值,Python 的浮点数有两种表示形式:

十进制形式:这种形式就是平常简单的浮点数,例如 5.12、512.0、0.512。浮点数必须包含一个 小数点,否则会被当成整数类型处理。

科学计数形式:例如 5.12e2(即 5.12×102)、5.12E2(也是 5.12 ×102)。

>>> a=1.0
>>> print(type(a))
<type 'float'>

二.布尔型(bool)

布尔值只有两种Ture或者Flase
非0和非空的值为Ture,0或空值为Flase

三.字符串

1.简介

字符串是由数字,字母,下划线组成的一串字符,使用时需要用引号

python的字串列表有2种取值顺序:
从左到右索引默认0开始的,最大范围是字符串长度少1
从右到左索引默认-1开始的,最大范围是字符串开头

要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其 中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。并且取值时去头不取尾,最后一个值取不到。

>>> a="abcdefg"
>>> a[:]
'abcdefg'
>>> a[3:]
'defg'
>>> a[3:5]
'de'

2.特殊符号+和*

(+)字符串连接运算符
( * )重复操作

>>> a="abcdefg"
>>> print(a+"hahaha")
abcdefghahaha
>>> print(a*3)
abcdefgabcdefgabcdefg //无间隔重复输出

3.设置步长有间隔截取字符串

>>> a="abcdefg"
>>> print(a[1:4:2])
bd

此处[]中第三个数字代表步长,此时步长为2,表示相隔一个字符去一次字符值

4.字符串的众多方法实现不同需求(此处只简单介绍少部分方法)

>>> name="zhang yue"
>>> print(name.title())  //全部输出
Zhang Yue
>>> print(name.upper())  //全部转换为大写输出
ZHANG YUE
>>> print(name.lower())  //全部转换为小写输出
zhang yue
>>> name="\tpython\t"  
>>> print(name)
        python
>>> print(name.rstrip())   //删除右边所有空格
        pythoy
>>> print(name.lstrip())   //删除左边所有空格
python
>>> print(name.strip())     //删除左右两边所有空格
python
.........

四.列表(list)

1.简介

列表是由一系列特定元素顺序排列的元素组成的,它的元素可以是任何数据类型即数字、字符串、列表、元组、字典、布尔值等等,同时其元素也是可修改的,使用[]标识。

2.列表中的方法

>>> names = ["zhangsan","lisi","wanger","xx"]
>>> print(names[names.index("xx")])
xx
>>> print(names.count("lisi"))  //打印索引值
1
>>> names.reverse()
>>> print(names)
['xx', 'wanger', 'lisi', 'zhangsan']
>>> names.sort()  //排序
>>> print(names)
['lisi', 'wanger', 'xx', 'zhangsan']
>>>

五.元组(与list类似 )

元组是另一个数据类型,类似于 List(列表)。
元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

六.字典(dictionary)

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典 是无序的对象集合。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

>>> tinydict = {'name': 'john', 'code': 6734, 'dept': 'sales'}
>>> print(tinydict) //输出完整字典的值
{'dept': 'sales', 'code': 6734, 'name': 'john'}
>>> print(tinydict.keys())  //输出字典所有键
['dept', 'code', 'name']
>>> print(tinydict.values())  //输出所有值
['sales', 6734, 'john']

七.集合

集合:集合是一个无序的,不重复的数据集合,可以使用大括号 { } 或者 set() 函数创建集合。

注意:创 建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

集合可以实现去重和两集合间的关系测试

>>> list_1 = [1,4,57]
>>> list_1 = set(list_1)
>>> print(list_1,type(list_1))
(set([1, 4, 57]), <type 'set'>)
>>> list_2 = set([1,8,3])
>>> print(list_1,list_2)
(set([1, 4, 57]), set([8, 1, 3]))
>>> print(list_1.intersection(list_2))  //求list_1和 2的交集
set([1])
>>> print(list_1.union(list_2))  //求list_1和 2的并集
set([1, 3, 4, 8, 57])
>>> print(list_1.difference(list_2))  //求list_1和 2的差集
set([57, 4])

八.流程控制

1.判断

判断结构可以使用if、elif和else关键字。所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字

elif主要用于多个判断条件连续执行,由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需 同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表 示只有两个条件同时成立的情况下,判断条件才成功

num = 5 
if num == 3:  # 判断num的值        
	print('boss') 
elif num == 2:        
	print('user') 
elif num == 1:    
	print('worker') 
elif num < 0:  # 值小于零时输出    
	print('error') 
else:    
	print('roadman')  # 条件均不成立时输出

2.循环

<1>whie 循环
在给定的判断条件为 true 时执行循环体,否则退出循环体。

<2>for 循环
重复执行语句

continue,break 来跳过循环,continue 用于跳过该次循环, break 则是用于退出循环

pass语句
Python pass 是空语句,是为了保持程序结构的完整性。 pass 不做任何事情,一般用做占位语句。

九.实例

编写登录接口

输入用户名密码
认证成功后显示欢迎信息
输错三次后锁定账号

# Author:橘春二三

import json

_username = input("请注册账号:")   //注册账号并设置初始密码
_password = input("请输入初始密码:")
user = {"user": _username,
        "passwd": _password
        }

with open("passwd", "w", encoding=("utf-8")) as f: //将账号和密码写入文件,永久保存
    json.dump(user, f)

with open("passwd", "w", encoding=("utf-8")) as f:
    json.dump(user, f)
//第一次注册完成后将此段代码注释再次运行
try:                         //抓住异常后锁定账号
    with open("passwd", "r") as f:     //读文件
        _user = (json.load(f))
        _username = _user["user"]
        _password = _user["passwd"]
    f.close()
except json.decoder.JSONDecodeError:
    print("您的账号已经锁定,请联系管理员...")
    exit()

i = 0
while i < 3:
    username = input("username:")
    password = input("password:")
    if username == _username and password == _password:
        print("logining ...")
        exit()
    else:    //输入账号和密码超过3次后
        if i == 2:
            with open("passwd", "a") as f:
                f.write("#")
            print("用户账号已锁定...")
        else:
            print("username or password err...")
            print("请在输入一次...")
    i += 1
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值