路飞学城-Python开发-第一章
# 基础需求:
# 让用户输入用户名密码
# 认证成功后显示欢迎信息
# 输错三次后退出程序
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开发-第一章的更多相关文章
- 路飞学城-Python开发-第二章
''' 数据结构: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家' ...
- 路飞学城-Python开发集训-第1章
学习体会: 在参加这次集训之前我自己学过一段时间的Python,看过老男孩的免费视频,自我感觉还行,老师写的代码基本上都能看懂,但是实际呢?....今天是集训第一次交作业的时间,突然发现看似简单升级需 ...
- 路飞学城-Python开发集训-第3章
学习心得: 通过这一章的作业,使我对正则表达式的使用直接提升了一个level,虽然作业完成的不怎么样,重复代码有点多,但是收获还是非常大的,有点找到写代码的感觉了,遗憾的是,这次作业交过,这次集训就结 ...
- 路飞学城-Python开发集训-第2章
学习心得: 这章对编码的讲解超级赞,现在对于编码终于有一点认知了,但还没有大彻大悟,还需要更加细心的琢磨一下Alex博客和视频,以前真的是被编码折磨死了,因为编码的问题而浪费的时间很多很多,现在终于感 ...
- 路飞学城-Python开发集训-第4章
学习心得: 学习笔记: 在python中一个py文件就是一个模块 模块好处: 1.提高可维护性 2.可重用 3.避免函数名和变量名冲突 模块分为三种: 1.内置标准模块(标准库),查看所有自带和第三方 ...
- 路飞学城-Python开发-第三章
# 数据结构: # goods = [ # {"name": "电脑", "price": 1999}, # {"name&quo ...
- 路飞学城-Python开发集训-第5章
面向过程:核心是过程二字,过程是解决问题的步骤,相当于设计一条流水线,是机械式的思维方式 优点:复杂的问题流程化,进而简单化 缺点:可扩展性差 面向对象:核心是对象二字,对象就是特征与技能的结合体. ...
- 路飞学城—Python爬虫实战密训班 第三章
路飞学城—Python爬虫实战密训班 第三章 一.scrapy-redis插件实现简单分布式爬虫 scrapy-redis插件用于将scrapy和redis结合实现简单分布式爬虫: - 定义调度器 - ...
- 路飞学城—Python爬虫实战密训班 第二章
路飞学城—Python爬虫实战密训班 第二章 一.Selenium基础 Selenium是一个第三方模块,可以完全模拟用户在浏览器上操作(相当于在浏览器上点点点). 1.安装 - pip instal ...
随机推荐
- GRpc-Go使用笔记
linux下配置GRpc-golang 1.git中下载protobuf包 2.解压(/usr/local/protobuf) unzip protobuf-cpp-3.0.0-alpha-3.z ...
- Oracle学习笔记——常用函数总结
在平时写PL/SQL的时候,经常要用到很多系统自带的函数,而这些函数用起来非常好用,但是每次用完以后,就又忘到脑后了,为了加深自己的映象,以及对这些函数做一个全面的总结,就有了今天这篇文章. 首先这就 ...
- git + grunt 环境配置
1⃣️ssh key生成步骤 一.设置Git的user.name和user.email: $ git config --global user.name "xiongzuyan&qu ...
- C++下面关于字符串数组的一些操作
今天在写一个搜索引擎的分词系统,是很简单的那种,但是居然费了我一天的时间还没完成,晚上估计还得弄一会了,但是在这个过程中,遇到了集中关于字符串数组的操作,值得和大家分享一下. 首先是关于统计字符串数组 ...
- Kattis -Backspace
Backspace Bjarki having trouble Shortly before the programming contest started, Bjarki decided to up ...
- 如何在React-Native上使用Typescript
首先安装脚手架: $ yarn global add create-react-native-app 创建项目: create-react-native-app xxx 进入项目并启动: cd xxx ...
- HDU 6149 Valley Numer II (状压DP 易错题)
题目大意:给你一个无向连通图(n<=30),点分为高点和低点,高点数量<=15,如果两个高点和低点都直接连边,那么我们称这三个点形成一个valley,每个点最多作为一个valley的组成部 ...
- 小学生都能学会的python(文件操作)
小学生都能学会的python(文件操作) 1. open("文件路径", mode="模式", encoding="编码") 文件的路径: ...
- Spring中的InitializingBean接口
InitializingBean接口为bean提供了初始化方法的方式,它只有afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候会执行该方法. 测试程序如下: impo ...
- (转载)springboot集成httpinvoker的客户端
原文:https://blog.csdn.net/geanwan/article/details/51505679 由于新项目采用了springboot,需要调用之前远程服务(之前项目用的spring ...