# 基础需求:
# 让用户输入用户名密码
# 认证成功后显示欢迎信息
# 输错三次后退出程序
username = 'pandaboy'
password = ''
def Login(username,password):
i=0
while i<3:
U = input('Please input username>>>')
P = input('Please input password>>>')
if U == username and P == password:
print('Welcome\n'+username)
break
else:
i+=1
if 3-i !=0:
print("Sorry,Don't U forget your account? Please try again,you still have\t" +str(3-i) +"\ttimes.")
else:
print("Sorry! I am shutting down!")
break
if __name__ == '__main__':
Login(username,password)

第一次作业(basic)

# 升级需求:
# 可以支持多个用户登录 (提示,通过列表存多个账户信息){pandaboy的疑问:用列表存储应该更好?}
# 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
'''
1.用户可以输入3次不同的账户,都输错也不会锁定
2.用户全部输入三次相同用户名错误才会锁定
3.创建一个初始化状态的文件
参考了博客文件
'''
import os.path
import pickle
username= ['pandaboy','zombie','plant']
password = ['','','']
def Login(username,password):
i=0
while i<3:
if not os.path.isfile('lock_file'):
f = open('lock_file', 'wb')
msg = {'pandaboy': 0, 'zombie': 0, 'plant': 0}
pickle.dump(msg, f)
f.close()
f = open('lock_file', 'rb+')
msg = pickle.load(f)
U = input('Please input username>>>')
if U not in msg :
print('No such\t' +U+ '\taccount! Try again!')
f.close()
continue
if msg[U] == 3:
print('your account has been locked,please contact the administrator!')
f.close()
break
P = input('Please input password>>>')
if U in username and P == password[username.index(U)]:
print('Welcome', U)
msg[U] = 0
f.seek(0)
pickle.dump(msg, f)
f.close()
break
else:
print('Wrong password!')
msg[U] += 1
print('Find %s errors' % msg[U])
f.seek(0)
pickle.dump(msg, f)
f.close()
if __name__ == '__main__':
Login(username,password)

第二次作业(upgrade)

Python开发IDE(工具)
Pycharm、eclipse
1.循环
while 条件
#循环体
#条件为真则执行
#条件为假则执行
break用于退出所有循环
continue用于退出当前循环

2.Pycharm的run
本质上是自动调用python使用的解释器

3.Python基本运算符
+ - * / ** %

4.Python字符串
#"一二三" 在Python种包含的是三个字符
name ="自动导入模板新"
if "自动" in name:
print("包含")
else:
print("不包含")
#in表示是否包含子字符串(连续的叫做子序列、子字符串),判断连续的字符在不在选择的字符串中
#in或者not in判断某个字符是否在某个字符中

5.布尔值(真假值)
#真 True 
#假 False
if True :
执行语句
else:
执行语句

6.破解安装方法
http://blog.csdn.net/doc_wei/article/details/77996223
http://idea.lanyus.com/
(-javaagent:C:\Program Files\JetBrains\PyCharm 2017.3.3\lib\JetbrainsCrack-2.7-release-str.jar)

神秘学习代码:https://www.cnblogs.com/nulige/p/6128674.html

7.简单的Python运算符
==
>
<
>=
<=
!=不等于
<>不等于

user == 'id'and(or) pwd =='password'#执行的优先级是从左到右执行,先计算括号内的数据再把计算完成的括号内数据再进行比较计算

8.Python的运算法则
比较运算
a=1>5
逻辑运算
a=1>6 or 1==1
成员运算
a="wen" in "文"

9.Python的基本数据类型
每一种数据的类型都具有共同的功能
数字
#具有类型int(Python3不管数字有多大)
#所有的功能都包含在int里
int()可以将字符串转换为数字['123a'这样的字符串是不能改为数字的,会出现报错]
int(num,base=2)将字符串按照2进制的形式转换成为数字形式
.bit_length统计数字用二进制表示时具有几位

字符串
#字符串表示str(字符串的用法最重要)
#str.title()
#str.upper()
#str.startwith('xx')
#v1=test.casefold()#所有的都变小写,许多未知的对相应的变为小写
#v2=test.center(20,"^")#一共10个位置,将字符串放中间,不写则空白填充,只能写一个字符
#

upper()表示大写的英文字母

列表(列表的用法次重要)
#列表表示为list

元祖
#元祖表示为tuple

字典
#字典表示为dict

布尔值
#布尔值表示为bool

路飞学城-Python开发-第一章的更多相关文章

  1. 路飞学城-Python开发-第二章

    ''' 数据结构: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家' ...

  2. 路飞学城-Python开发集训-第1章

    学习体会: 在参加这次集训之前我自己学过一段时间的Python,看过老男孩的免费视频,自我感觉还行,老师写的代码基本上都能看懂,但是实际呢?....今天是集训第一次交作业的时间,突然发现看似简单升级需 ...

  3. 路飞学城-Python开发集训-第3章

    学习心得: 通过这一章的作业,使我对正则表达式的使用直接提升了一个level,虽然作业完成的不怎么样,重复代码有点多,但是收获还是非常大的,有点找到写代码的感觉了,遗憾的是,这次作业交过,这次集训就结 ...

  4. 路飞学城-Python开发集训-第2章

    学习心得: 这章对编码的讲解超级赞,现在对于编码终于有一点认知了,但还没有大彻大悟,还需要更加细心的琢磨一下Alex博客和视频,以前真的是被编码折磨死了,因为编码的问题而浪费的时间很多很多,现在终于感 ...

  5. 路飞学城-Python开发集训-第4章

    学习心得: 学习笔记: 在python中一个py文件就是一个模块 模块好处: 1.提高可维护性 2.可重用 3.避免函数名和变量名冲突 模块分为三种: 1.内置标准模块(标准库),查看所有自带和第三方 ...

  6. 路飞学城-Python开发-第三章

    # 数据结构: # goods = [ # {"name": "电脑", "price": 1999}, # {"name&quo ...

  7. 路飞学城-Python开发集训-第5章

    面向过程:核心是过程二字,过程是解决问题的步骤,相当于设计一条流水线,是机械式的思维方式 优点:复杂的问题流程化,进而简单化 缺点:可扩展性差 面向对象:核心是对象二字,对象就是特征与技能的结合体. ...

  8. 路飞学城—Python爬虫实战密训班 第三章

    路飞学城—Python爬虫实战密训班 第三章 一.scrapy-redis插件实现简单分布式爬虫 scrapy-redis插件用于将scrapy和redis结合实现简单分布式爬虫: - 定义调度器 - ...

  9. 路飞学城—Python爬虫实战密训班 第二章

    路飞学城—Python爬虫实战密训班 第二章 一.Selenium基础 Selenium是一个第三方模块,可以完全模拟用户在浏览器上操作(相当于在浏览器上点点点). 1.安装 - pip instal ...

随机推荐

  1. Java并发--安全发布对象

    单例模式 懒汉模式:多线程非线程安全,在多线程中,可能会产生多个对象 饿汉模式:线程安全. 类加载的时候初始化,不推荐在构造函数需要做耗时操作的时候使用,因为可能导致类加载缓慢,而且可能初始化后并没有 ...

  2. IPv6地址分配

  3. Java通过UUID随机生成36位、32位唯一识别码(唯一字符串)

    import java.util.UUID; /** * 通过UUID随机生成36位.32位唯一识别码(唯一字符串) * @author [J.H] * */ public class Test { ...

  4. zabbix-server端监控MySQL服务

    Zabbix 监控MySQL数据库 为server.zabbix,com 添加服务模块 创建MySQL服务图形 Server.zabbix.com 服务器操作 [root@server ~]# cd ...

  5. 基于 OSGi 的面向服务的组件编程

    作者:曹 羽中 (caoyuz@cn.ibm.com), 软件工程师, IBM中国开发中心 出处:http://www.ibm.com/developerworks/cn/opensource/os- ...

  6. dataTable 动态列 二次加载

    需要把 列头和表格内容全部清空 if ($('#datatable').hasClass('dataTable')) { var dttable = $('#datatable').dataTable ...

  7. systemctl 控制单元

    [root@web01 ~]# systemctl status sshd.service ● sshd.service - OpenSSH server daemon Loaded: loaded ...

  8. h5性能优化,细节决定结果。

    介绍一些最近整理的优化细节.图片压缩什么的就不说了,这是优化必须做的.今天就说一下大家写代码时可以培养的优化的细节点. 不滥用float.不滥用web字体. Float在渲染时计算量比较大,并且会脱标 ...

  9. pytorch 8 CNN 卷积神经网络

    # library # standard library import os # third-party library import torch import torch.nn as nn impo ...

  10. CSS的引入方式和样式

    CSS的引入方式和样式 一.样式 行内样式 内接样式 外接样式(1.链接式 2.导入式) <!--行内样式--> <div> <p style="color: ...