Python 语言
# 89年 龟叔
# 人工智能 2012年
Python的特点
# 优点:简明 简单
# 缺点:慢 - 执行速度相对其他语言慢
# 编程语言的分类:代码-->1010101-->中国人\印度人
# 编译型语言:c c++ Java go
# 优点:执行速度快
# 缺点:维护成本高\跨平台性差
# 解释型语言:Python
# 优点 : 维护成本低\跨平台性好(装上Python解释器各个操作系统都能用)
# 缺点 : 慢
解释器
# cpython:官方推荐的
# ipython:anacoda提供的,几乎一样,交互上有一些微弱的区别(爬虫)
# jython: 和java平台进行交互
# ironpython: 和.net平台进行交互
Python安装
# python2.x
# python3.x
# 两个版本互相不兼容
# win + r --> cmd
# 需要配置环境变量,以便使用python的解释器
hello word
print('hello word')
# 两种运行方式
# 在python解释器中直接写:
print('hello,world')
# 断电消失,重启代码消失
# 退出python命令行 :exit()
# 将print('hello,world')写在文件中
# 在命令行执行 python 文件路径
# 文件习惯用.py结尾
# 代码会永久储存在文件中
IDE
# 全宇宙最好用 - pycharm
# sublime - 交互的时候
# eclipse - 框架项目的创建
变量
# 一个月的开销,只要遇到=,永远先计算=号右面的,然后把结果赋值给左边的变量名
# cloth = 398.23
# traffic = 20*10
# food = 800*4
# cloth+traffic+food
# 规范
# 1.数字 字母 下划线组成
# 2.不能以数字开头
# 3.不能是python中的关键字 : while if elif else break continue
# 4.尽量使用英文,而不是中文
# 5.尽量有意义
# 6.尽量不要太长
# 7.推荐使用规范命名格式
# 驼峰命名
# 下划线命名(常用)
# 应用
cloth_price = 100
print(cloth_price*0.8)
cloth_price = cloth_price*0.8
print(cloth_price)
常量
# 不能更改的量
# 给常量创建名字
# 1.修改更加方便
# 2.更加明确在程序中的意义
session_active_time = 30
port = 20
user_num = 30
print(session_active_time)
print(port)
print(user_num)
SESSION_ACTIVE_TIME = 30 #常量,不能修改的量,大写
注释
注释某行代码 # 注释内容
注释某段代码 '''注释内容'''
# 1.让人能够更简单的看懂你的代码
# 1.不要不加注释
# 2.不要频繁加注释,一个功能一个注释
# 3.不要写错误的注释(修改代码的同时也要修改注释)
# 2.排查错误的时候
快捷键 ctrl + ?/
基础数据类型
# 通过type(变量名)来获取变量的数据类型
# bool 真/True/1 假/False/0
# 非0的数字都是True
# int integer整型
# 加 +
# 减 -
# 乘 *
# 整除 // 也叫地板除
# 除 / 结果是小数
# 余数 %
# 乘方 **
# float 小数 浮点型
# 小数点后的位数会不精准
# str 字符串
# '字符串' "字符串"
# '''可以换行的字符串''' """"可以换行的字符串"""
# 字符串 + 字符串
# 字符串 * 数字
bool 布尔值
1 > 2 假 False
2 = 3 假 False
3<5 真
0 假
1 真
#除了0以外的所有数字都是真
int 整形
a = 1
b = 2
print(type(a),a)
print(type(b),b)
print(a+b)
print(a-b)
print(a*b)
print(a/b) # 小数除
print(a//b) #整除,地板除
print(10%3) #取余
print(2**3) #乘方
float 浮点型
print(type(1))
print(type(1.23))
str 字符串
tmp = 'abc'
print(tmp)
tmp = "abc"
print(tmp)
tmp = '锄禾日当午,\n汗滴禾下土.'
tmp = '''锄禾日当午,
汗滴禾下土. '''
print(tmp)
s = '123'
n = 123
print(type(s),type(n))
print('alex'+3) #报错,字符串只能和数字乘,但其他的运算不可以
print('alex'*2) True
输入输出
# 输出 print
# 输入 input
# inp = input('用户输入的时候看到的提示 :')
# 注意 :input接受进来的所有内容都是字符串
# 如果需要使用数字(整数\小数)
# a = int(变量名)
# f = float(变量名)
# a就是一个整数类型的数字
# f就是一个小数类型的数字
输出
print(1,2)
print('alex',35)
print('hello',123,'中午')
输入
age = input('请输入:')
print(age,'岁')
# 让用户输入 名字 年龄 gender
# 打印用户输入信息
username = input('lease enter your username')
age = int(input('lease enter your age'))
gender = input('lease enter your gender')
print('欢迎%s你的年龄%s你的密码%s'%(username,age,gender))
if 条件判断语句
# if 条件:
缩进 满足条件之后要做的事情
# if 条件:
缩进 满足条件之后要做的事情
else:
缩进 不满足条件之后要做的事情
# if 条件1:
缩进 满足条件1之后要做的事情
elif 条件2:
缩进 不满足条件1但满足条件2之后要做的事情
elif 条件3:
缩进 不满足条件1\2但满足条件3之后要做的事情
else:
缩进 上面的条件都不满足要做的事情
# and语句
# 条件1 and 条件2
num = input('老男孩现在的学员数:')
num = int(num)
print(num)
if num >=100: # num = 99
money = num * 12800
print(money,'买特斯拉') #不执行 #满足if条件之后才做的事情
print('买Mac')
else:
print('吃泡面')
print('睡觉') #执行
# 比较
1 > 2
1< 2
1>=2
1!=2
1==2
a = 'abc'
b ='abc'
print(a==b)
num = input('请输入你的分数')
num = int(num)
if num < 60: #如果满足后面的就不进行了
print('不及格')
elif num < 80: # 不满足才进行,满足了在下面的又不进行
print('及格')
elif num < 90:
print('良好')
else:
print('优秀')
gender1 = input('敲门人的性别:')
if gender1 == '男':
print('去找Alex')
elif gender1 == '女':
beauty = input('是否好看')
if beauty == '是':
wedding = input('是否未婚')
if wedding == '是':
print('开门')
else:
print('去找小白')
else:
print('去找wusir')
# 改进
gender1 = input('敲门人的性别:')
beauty = input('是否好看')
wedding = input('是否未婚')
if gender1 == '女' and beauty == '是' and wedding == '是':
print('开门')
elif gender1 == '女' and beauty == '是' and wedding == '否':
print('去找小白')
elif gender1 == '女' and beauty == '否':
print('去找wusir')
else:
print('去找Alex')
循环
# while 条件:
缩进 循环体
# 退出循环:break
# 跳过循环过程中的某一步:continue
# while True: #死循环
# while循环
# while 条件:
# 要循环的代码
# 循环不明白
# n = 0
# while n<5: # 结束条件 条件不满足的时候就结束了
# print(n)
# n = n+1
# 一般情况下 永远是某一个语法自带一个:
# 这个:之后总是要缩进
# 你希望写在这个语法范围内的代码都要缩进
# n = 0
# while n <5:
# if n % 2 == 0:
# print('偶数 : ', n)
# else:
# print('奇数 : ', n)
# n = n+1
n = 0
while n < 3:
print('天天向上')
n = n+1 # n=0+1=1 n=1+1=2 n=2+1=3,条件不满足退出循环
# 强制退出循环 break
# 找到0-300中所有能被5整除也能被16整除的数
n = 0
while n<300:
if n%5 ==0 and n%16 == 0:
print('-->',n)
break
n = n+1
![](https://img2018.cnblogs.com/blog/1263602/201909/1263602-20190903232706694-1581111039.png)
n = 0
while n<10:
print('begin',n)
n = n + 1
if n == 2:
continue
print('end',n)
习题
# 习题讲解
# 双色球
# 先让用户依次选择6个红球(红球的选择范围是1-32)
n = 0
s1 = ''
while n < 6:
num1 = input('请输入红球的号码 :')
num = int(num1)
if num <= 32 and num >= 1:
print('您选择了红球',num1) # '23' ,'24'
n = n + 1
if n < 6:
s1 = s1 + num1 +',' # '23,'+'24'+',' = '23,24,25,26,27,'
else:
s1 = s1 + num1 # '23,24,25,26,27,'+'28'
else:
print('请选择1-32之间的数字')
m = 0
s2 = ''
while m < 2:
num2 = input('请输入蓝球的号码 :')
num = int(num2)
if num <= 16 and num >= 1:
print('您选择了蓝球', num2)
m = m + 1
if m<2:
s2 = s2 + num2 + ',' # 除最后一个数字以外的拼接
else:
s2 = s2 + num2 # 最后一个数字的拼接
else:
print('请选择1-16之间的数字')
print('您选择的红球有 :',s1)
print('您选择的蓝球有 :',s2)