python3的安装
1.拿到源码安装包;
2.解压安装包到/opt目录下;tar zxf 包 -C 目录
3.安装编译过程中需要的依赖:gcc,zlib,zlib-devel,openssl-devel;
4.进入解压的安装包进行编译
cd /opt/python3.*
./configure --prefix=/usr/local/python3 --with-ssl
–prefix= :安装路径 --with-ssl :ssl加密
安装: make && make install
##可选添加环境变量,请万分留意,一旦出错后果严重##
5.添加python3的命令到环境变量中
echo KaTeX parse error: Expected 'EOF', got '#' at position 18: …TH :查看系统的环境变量 #̲临时添加: export PA…PATH"
#永久添加:
echo export PATH="/usr/local/python3/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
6.检测是否添加成功
命令行输入python3
输入与输出
python2与python3输出的差距
print’’ #python2
print(’’) #python3
每一行代码只负责完成一个动作
print的作用:把内容输出到屏幕上
python是非常严格的程序设计语言,每行代码前面不能随意加空格
#程序:输入(键盘)----代码(java/python/c)----输出(屏幕)
输入:
pyhon2*
input:(只接收数值类型)
help(input) 查看input指令
input()
num = input(‘请输入密码:’)
请输入密码:123456print num
123456num = input(‘请输入密码:’)
请输入密码:westos12345
Traceback (most recent call last):
File “”, line 1, in
File “”, line 1, in
NameError: name ‘westos12345’ is not defined
raw_input(接收字符串类型)
name = raw_input(‘请输入用户名:’)
请输入用户名:tomprint name
tomname = raw_input(‘请输入年龄:’)
请输入年龄:18print name
18type(name)
<type ‘str’>
变量的定义:
在python中,每个变量在使用之前都必须赋值,变量赋值后该变量才会被创建
等号(=):就是用来给变量赋值的
=左边是一个变量名
=右边是存储在内存中的值(被变量名所指向)
变量名=值
python3:(没有raw_input)
#input:接收的都是字符串类型
num = input()
12num
‘12’name = input(‘请输入你的名字:’)
请输入你的名字:harryname
‘harry’
python的输出
格式化输出
在python中可以使用print函数将信息输出到控制台
如果希望输出文字的同时,一起输出数据
语法格式:
print(‘格式化字符串’ %(变量1,变量2…))
格式化字符串 含义
%s: 字符串
%d: 十进制的整数
%f: 浮点数
%%: 输出%
1.定义字符串变量name,输出:我的名字叫小明,请多多关照
name = ‘小明’
sex = ‘男’
print(‘我的名字叫%s,请多多关照,我的性别是 %s’ %(name,sex))
2.定义整数变量student_num,输出:我的学号是000001
student_nu = 123456
#%06d:不到6位就补0,如果是6位,该是多少是多少print(‘我的学号是 %06d’ %(student_nu))
3.定义小数 price,weight,money,输出:水果的单价是?元,购买了?斤,需要多少钱
price = 8.5
weight = 7.5
money = price * weight
#%.2f:保留小数点后两位print(‘水果的单价是%.2f元,购买了%.2f斤,需要多%.2f少钱’ %(price,weight,money))
4.定义一个小数scale 输出:数据比例是10.00%
scale1 = 0.1
scale2= 0.1 * 100
print(‘数据比例是 %.2f%%’ %(scale1 * 100))
print(‘数据比例是 %.2f%%’ %(scale2))
输入和输出练习
求平均成绩(python3解释器)
#- 输入学生姓名;
#- 依次输入学生的三门科目成绩;
#- 计算该学生的平均成绩, 并打印;
#- 平均成绩保留一位小数点;
#- 计算该学生语文成绩占总成绩的百分之多少?并打印。eg: 78%;
name=input(‘输入学生姓名:’)
chinese=float(input(‘输入语文成绩:’))
math=float(input(‘输入数学成绩:’))
english=float((input(‘输入英语成绩:’))
#平均成绩,保留一位小数all=chinese+math+english
average=all/3
print(’%s的平均成绩:%.1f’ %(name,average))
#语文成绩占比chineseprecent=chinese/all
print(’%s的语文成绩占总成绩的百分比:%.1f%%’ %(name,chineseprecent*100))
python的数据类型
#整型
a = 1
print(a)
1type(a)
int
#浮点型
b = 1.2
type(b)
float
#字符串类型
c = ‘westos’
type©
str
#类型转换
a=1
float(a)
1.0b=1.2
int(b)
1str(a)
‘1’str(b)
‘1.2’
d = ‘123456’
d
‘123456’int(d)
123456float(d)
123456.0
#如何删除内存中的变量
del a
#bool类型
bool:只有两个值(True False)
#非0即真
a = 1
bool(a)
Truebool(0)
Falsebool(1)
Truebool(’ ')
Truebool(’’)
Falsebool(2412414)
True
算数运算符号
+,-, *,/,%
先乘除后加减
同级运算符是从左至右 计算
可以使用()调整计算的优先级
判断语句(if)
if 要判断的条件:
条件成立的时,要做的事情
else:
条件不成立的时候,要做的事情
注意:代码的缩进为一个tab键,或者四个空格(tab键和空格不要混用)
##tab更改为四个空格:
vim /etc/vimrc
set ts=4
age = 13
if age >= 18:
print(‘允许进入网吧’)
else:
print(‘未成年,不允许进入网吧’)
逻辑运算符
and:
条件1 and 条件2
两个条件同时满足,返回True
只要有一个不满足,就返回False
or:
条件1 and 条件2
两个条件只要有一个满足,返回True
两个条件都不满足,返回False
not:
对一个条件取反:not 条件
age = -120
if age >= 0 and age <=120:
print(‘年龄正确’)
else:
print(‘年龄不正确’)
python_score = 60
c_score = 55
if python_score > 60 or c_score > 60:
print(‘考试通过’)
else:
print(‘请继续努力’)
is_employee = False
if not is_employee:
print(‘非本公司员工,请勿入内’)
holidy_name=‘情人节’
if holidy_name == ‘情人节’:
print(‘看电影’)
print(‘买玫瑰’)
elif holidy_name == ‘生日’:
print(‘买蛋糕’)
print(‘买口红’)
elif holidy_name ==‘圣诞节’:
print(‘买苹果’)
else:
print(‘每天都是节日!’)
引入随机
import random
random.randint(12,20)
12random.randint(12,20)
13
random.randint(a,b) # 随机返回[a,b]之间的整数,包含a,b
如果a=b:结果不变
如果a>b:结果报错,下限必须小于上限
if的例子
例1
需求:
1.从控制台输入要出的拳 —石头(1)/剪刀(2)/布(3)
2.电脑随即出拳–先假定电脑只会出石头,完成整体代码功能
3.比较胜负
石头 胜 剪刀
剪刀 胜 布
布 胜 石头
import random
player = int(input(‘请输入要出的拳:石头(1)/剪刀(2)/布(3)’))
computer = random.randint(1,3)
print(‘玩家选择的拳头是:%d 电脑出的是 %d’ %(player,computer))if ((player == 1 and computer ==2) or (player == 2 and computer == 3) or (player == 3 and computer == 1)):
print (‘玩家胜利~’)
elif player == computer:
print(‘无胜负~再来’)
else:
print(‘玩家输了~’)
例2:
判断闰年?
用户输入年份year, 判断是否为闰年?
year能被4整除但是不能被100整除 或者 year能被400整除, 那么就是闰年;
year=int(inut(‘请输入年份:’))
if (year%4==0 and year%100! = 0 ) or year%400 == 0:
print(’%d年为闰年’ %(year))
else:
print(’%d年为平年’ %(year))
练习
- 输入年、月,输出本月有多少天。合理选择分支语句完成设计任务。
输入样例1:2004 2
输出结果1:本月29天
输入样例2:2010 4
输出结果2:本月30天
year=int(input(‘请输入年份:’))
month=int(input(‘请输入月份’))
if ((year%4 == 0 and year%100 != 0) or year%400 == 0) and month == 2:print(‘本月29天’)
elif year%4!=0 and month == 2:
print(‘本月28天’)
elif month==4 or month ==6 or month ==9 or month ==11:
print(‘本月30天’)
else:
print(‘本月31天’)
- 用 if 判断输入的值是否为空?如果为空,报错Error
string=input()
if string=’’:print(‘Error’)
- 根据用于指定月份,打印该月份所属的季节。
**提示: 3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季
month=int(input(‘请输入月份:’))
if month>=3 and month<=5:print(‘当前季节为春季’)
elif month>=6 and month<=8:
print(‘当前季节为夏季’)
elif month>=9 and month<=11:
print(‘当前季节为秋季’)
else:
print(‘当前季节为冬季’)