什么是python?
python是一种面向对象、解释型的计算机语言,它的特点是语法简洁、优雅、简单易学。
编译型语言:
写好代码之后把代码编译成二进制文件,运行时运行编译好的二进制文件。比如C、C++、C#,运行速度快,但编译过程慢。
解释型语言:
运行一行代码编译一行,什么时候运行代码,什么时候编译。比如,php、pyhton、ruby、java、go、JavaScript,运行速度较慢,性能差一些。
Java虽然编译成calss文件,但不是二进制的,在jvm中运行
脚本语言:
功能单一的语言。比如shell、vb、javascript、html、bat
一、变量
python中定义变量很简单,一个等号就搞定,不需要指定数据类型。python变量里面存的是内存地址。
变量的定义规则:
变量名要见名知意。
变量名只能是 字母、数字或下划线的任意组合
变量名的第一个字符不能是数字
以下关键字不能声明为变量名:
[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘,‘try‘, ‘while‘, ‘with‘, ‘yield‘]
python中的单引号、双引号:
字符串都用引号引起来,单引号和双引号没有区别,如果字符串里面包含单引号的话,外面就用双引号,里面有双引号的话,外面就用单引号
单行注释,使用#
python中的三引号:
多行注释
定义多行的字符串,保持原有的格式
二、输入、输出
接收输入:
age = input(‘请输入年龄:‘) #input接收输入的值都是string类型的 age = int(age) #字符串类型转换成整型 today = str(num) #整型、日期类型等转换成字符串型
raw_input() #python2中使用的方法
输出:
print(age)
三、条件判断
if 条件: xxx else: xxx
多条件判断:
score = input(‘请输入score:‘) score = int(score) #input接收的输入是字符串,此处需要转换成int型 if score>=90: print(‘优秀‘) elif score>=75 and score <90: print(‘良好‘) elif score>=60 and score<75: print(‘合格‘) else: print(‘不合格‘)
“or” 的使用:
if sex==’男’ or sex == ‘xx’:
“!=”的使用:
if sex!==’xx’ and/or xxx
四、循环(迭代、遍历):
while循环:while循环必须有一个计数器,每次循环计算器+1
count = 0 while count<10: print(‘Hello world!‘) #循环时重复执行循环体中的语句 count = count + 1 else: #与while想对应的else,循环正常结束后才会执行它(前面有break,就不会执行) xxx
for循环 :不需要定义计算器,每次循环,自动+1(for循环不能写出死循环)
for i in range(3): #循环3次 print(i) print(‘hello h‘) else: print(‘正常循环后执行‘)
break和continue,都只能用在循环里面,它们有以下区别:
break:立即结束循环,不管循环有没有循环完
continue:结束本次循环,进行开启下一次循环(执行continue,它后面的代码就永远执行不到)
#while和for循环最后的else,如果前面有break就不算正常循环完,就不会执行else中的语句
五、小练习
写个猜数字的小游戏,要求:
产生一个随机数字,1-100之间,接收用户输入;
如果猜对了,游戏结束;如果猜大了,提示猜大了;如果猜小了,提示猜小了;
错误次数限制3次。
产生随机数模块使用random.randint(1,101),是一个标准包,导入即可。
import random num = random.randint(1,10) #print(num) count = 0 while count<3: guess = input("请输入数字:") guess = int(guess) #转换成int类型 if guess<num: print("小了小了") elif guess>num: print("大了大了") else: print("恭喜猜对了") break #break立即结束循环,不管循环有没有循环完 count = count + 1 #或者写成:count += 1 else: #三次循环结束执行else,如果是前面是break,就不执行此else print("游戏次数已经用完了。")
六、range的使用:
for i in range(101): if i%2 == 0: print(i)
七、字符串格式化:
占位符:%s -字符串,%d -整数 ,%.2f -float(自动四舍五入)
import datetime today = datetime.date.today() username = input("请输入用户名:") #welcome = "欢迎光临:" + username #第一种方式:字符串连接,不推荐 #welcome = "欢迎光临:%s" %username #使用占位符格式化字符串 welcome = "欢迎光临:%s,今天是:%s" %(username, today) #多个占位符 print(welcome)
八、练习
使用while循环:
#1、登录 username、passwd #输入用户和密码输入正确的话,提示:xxx,欢迎登录,今天的日期是xxx,程序结束 #输入错误的话,提示“账号/密码输入错误” # 2、最多输入错误3次,输入错误超过3次,提示错误次数过多 #循环 # 3、账号密码,要校验输入为空的情况, import datetime uname = ‘test‘ pwd = ‘123456‘ today = datetime.date.today() #获取今天的日期 count = 0 while count<3: username = input("请输入用户名:").strip() #strip()去掉空格 passwd = input("请输入密码:").strip() if len(username)==0 or len(passwd)==0: #if username==‘‘ or passwd==‘‘: #或者为空 print("账号或密码不能为空,请重新输入") #continue elif username==uname and passwd==pwd: print("%s,欢迎登录,今天的日期是:%s" % (username,today)) break else: print("账号或密码输入错误!") count += 1 else: print("输入错误超过3次,错误次数过多!") #循环正常结束,使用else
使用for循环:
import datetime uname = ‘test‘ pwd = ‘123456‘ today = datetime.date.today() #获取今天的日期 for i in range(3): username = input("请输入用户名:").strip() #strip()去掉空格 passwd = input("请输入密码:").strip() if len(username)==0 or len(passwd)==0: #if username==‘‘ or passwd==‘‘: #或者为空 print("账号或密码不能为空,请重新输入") elif username==uname and passwd==pwd: print("%s,欢迎登录,今天的日期是:%s" % (username,today)) break else: print("账号或密码输入错误!") else: print("输入错误超过3次,错误次数过多!") #循环正常结束,使用else
原文地址:https://www.cnblogs.com/chenhongl/p/8729354.html