学习PYTHON第一天

时间:2023-12-10 09:20:08

需要掌握的内容

1.编程语言

2.python   、  C#   JAVA

3.python:  pypy    cpython     jpython

4.执行方式

解释器

文件执行

5.指定解释器

python xxx.py

./xxx.py     #! /usr/bin/env python

ascii   unicode   utf-8

python

2.7   # -*- coding=utf-8  -*-

3.x   默认utf-8

6.变量,代指

变量名=值

变量名要求:

数字、字母、下划线

数字不能开头

不能和py关键字重复

7.条件 if 

 if 判断条件1:
执行语句1……
elif 判断条件2:
执行语句2……
else:
执行语句3……

如果满足。。。。则执行。。。。否则执行。。。

8.while

while 条件:

从上向下执行

判断条件是否为真,如果真执行


1、使用while循环输入 1 2 3 4 5 6     8 9 10

i = 1
while i<=10:
if i==7:
i += 1
else:
print(i)
i+=1

思路:

★循环10以内的,只要判断变量i小于11或小于等于10就为真即可;

★只有一个7是特殊不输出,所以如果变量等于7的话,只做加1,不打印即可,其他则打印并加1。


2、求1-100的所有数的和

 i = 1
sum = 0
while i<=100:
sum += i
i += 1
print(sum)

思路:

★循环100以内的数的和,只要判断i变量小于101或小于等于100就为真即可;

★所有数的和等于每次循环的和加变量,循环完毕在打印和即可

输出结果为:5050


3、输出 1-100 内的所有奇数

 nub = int(input("请输入想计算多少以内的奇数和:"))#输100即可 int为转换输入的为数字
i = 1
sum = 0
while i<=nub:
if i%2!=0:
sum += i
i += 2
else:
i += 1
print(sum)

思路:

★循环100以内的数的和,只要判断i变量小于101或小于等于100就为真即可;

★奇数为1,3,5,所以判断1除以2取余不等于0的话就为奇数,并把奇数加起来即可。

★上一步已经判断出是奇数了,所有每次加2就得到下一个奇数,不用执行else.

输出结果为:100为2500


4、输出 1-100 内的所有偶数

 i = 1
sum = 0
while i<=100:
if i%2==0:
sum = sum + i
i += 2
else:
i += 1
print(sum)

思路:

★循环100以内的数的和,只要判断i变量小于101或小于等于100就为真即可;

★奇数为2,4,5,所以判断1除以2取余等于0的话就为偶数,并把偶数加起来即可。

★上一步已经判断出是偶数了,所有每次加2就得到下一个偶数,不用执行else.

输出结果为:100以内的偶数和为2550


5、求1-2+3-4+5 ... 99的所有数的和

 odd,even,i = 0,0,1
while i<100:
if i%2==0:
even += i
i += 1
else:
odd += i
i += 1
print(odd-even)

思路:

★通过要求可知:奇数都为正,偶数都为负,可以把奇数的和减轻偶数的和就是结果;

★变量3个,奇数和,偶数和,数字变量。循环小于100为真即可;

★如果数字除2取余为零,为偶数,加偶数的和.否则为奇数,加奇数的和即可,循环完毕,打印奇数和减偶数和为结果。

输出结果为:50

 sum,even,i = 0,0,1
while i<100:
sum += 1
if i%2==0:
even += i
i += 1
else:
i += 1
print(sum-2*even)

思路:

★通过要求可知:奇数都为加,偶数都为减,可以先计算1-99的和,再减去偶数等于奇数和,再减去偶数就等于结果;

★变量3个,总和,偶数和,数字变量。循环小于100为真即可;

★循环计算1-99的和,判断是否是偶数,并计算偶数和。如果是奇数则加1即可;

★打印总和减去2次偶数就可以算出总和。

输出结果为:50


6、用户登陆(三次机会重试)

 name,pswd,i = "hairui" ,"",1
while i < 4:
input_name = input("Username:")
input_pswd = input("Password:")
if input_name == name and input_pswd == pswd:
print("Welcome to my program!")
break
else:
print("The user name or password you entered is incorrect. Please enter again.")
i += 1
continue
print("Enter more than 3 times, goodbye!")

思路:

★变量定义用户名,密码,数字,数字用于判断输入次数;

★判断变量i小于3为真,交互让用户输入账号和密码;

★如果输入的账号与密码等于变量用户名和密码则输出欢迎信息并退出break,如果不是则输出用户名或密码不正确再重新输入,并将变量i+1,退出本次循环contiune。

★如果i=4了则不执行循环,直接输出你已经输入超过3次,再见!


7.用户登录三次锁死代码

 #!/usr/bin/env python
# -*- coding=utf-8 -*-
# from hairui USERNAME,PASSWORD = "hairui",""
print("\033[31;1m信息查询系统\033[1m".center(45,"="))
for i in range(3):
user = input("请输入账号:")
file = open("user","r")#打开文件,只读
b = True #用于外循环使用
for line in file:#读取每行数据
if line.strip() == user:#取消掉换行符,字符串strip用法
print("\033[31;1m你输入的账号已被锁定,再见!\033[1m")
file.close()
b = False #外循环跳出条件
break
if b is False:#跳出外循环
break
pasw = input("请输入密码:")
if i == 2:#判断程序执行第三次,执行写入文件
file = open("user","a")
file.write("%s\n"%user)
file.close()
print("你输入的次数太多,账号已被锁定。")
break
if user == USERNAME and pasw == PASSWORD:#用户名和密码都正确返回信息。
print("\033[31;1m登录成功\033[1m".center(46,"="))
print("欢迎 %s 回来。"%user)
print("=".center(50,"="))
break
if user != USERNAME or pasw != PASSWORD:#判断账号或密码不正确的情况下提示
print("\033[31;1m账号或密码错误,请重新输入!\033[1m")
print("".center(38,"="))
continue

完美实现

 思路:

★首先实现登录交互,使用for循环实现输入错误三次就退出程序

★要实现在下一次打开程序技能读取到锁定的程序,那么就用的文件读写,我们只要把最后一次输入错误的用户名写入文件中即可;

★在打开的时候,用户输入账号就需要读取文件并判断是否存在文件中,存在就提示被锁死,退出,不存在就继续输入密码。

★需要注意读取文件中每一行使用for循环读取,判断line的时候需要将line的换行符去掉,print(line,)或者print(line.strip())