一、输入和输出函数
1.输出函数(打印函数) - print
控制台显示的内容一定是程序中打印(print)的内容
1.1 一次打印1个数据:print(数据)
1.2 同时打印多个数据:print(数据1,数据2,数据3,…)
print(100,200,300,'400')
2.输入函数 - input
从控制台获取数据到程序中使用
2.1 基本用法
变量 = input(输入提示信息)
name = input('请输入你的名字:')
print(name)
2.2 input函数不管输入的数据是什么,得到的数据的类型都是字符串(str)
类型转换:类型名(数据),例:int(变量名)
age = int(input('请输入你的年龄:'))
print(age < 18)
weight = int(input('体重(公斤):'))*2
print(weight,'斤')
二、变量
1.数据的使用方法
在程序中数据用的时候应该先将数据保存到变量中,然后再通过使用变量来使用变量中保存的数据
2.定义变量(创建变量)
1)语法:
变量名 = 数据
2)说明:
a.变量名 - 由程序猿自己命名
2个要求:是标识符;不是关键字
3个规范:见名知义;不使用系统的函数名、类名和模块名;所有字母都小写,多个单词之间用下划线隔开
b.= - 固定写法
c.数据 - 可是任何有结果的表达式,如:具体的某类型的数据、运算结果、函数调用表达式等
name = 'TK'
dog_name = 'ShuaiShuai' # PEP8命名规范
dogNmae = 'ShuaiShuai' # 驼峰式命名
name,dog_name = 'TK','ShuaiShuai'
print(name,dog_name)
a = 'hh'
b = 10
print(int(a) + b)
a = int(float(input('输入:')))
print(a)
3.使用变量
使用变量就是使用变量中保存的数据(数据能做的事,变量都可以做)
注意:变量必须先定义再使用
4.重新给变量赋值
xx = 100
xx = 'abc'
xx = [10,20]
print(xx)
三、运算符
数学运算符:+ - * / %(取余、取模) //(整除) **(幂运算)
比较运算符:> < == != >= <=
逻辑运算符:and,or,not
赋值运算符:= += -= *= /= %= //=
1.数学运算符
1.1 加减乘除
注意:除法运算符的结果一定是float类型
print(int(7.5 / 2))
1.2 %(取余、取模) - 求余数
应用场景1:判断两个整数之间是否存在整除关系(判断一个数是否能被另外一个数整除)
print(10 / 7)
print(10 % 7)
应用场景2:获取整数的低位数
num1 = 289
num2 = 2
print(num1 % num2 == 0)
1.3 //(整除) - 求商,商向小取整
print(5 // 2) # 2 2.5 3
print(3.6 // 2) # 1.0 1.8 2.0
print(-5 // 2) # -3 -2.5 -2
应用场景1:完整的个数
例:num中有多少个完整的8
num1 = 7374
print(num1 // 8)
例:time中有多少个完整的小时
time = 718212 # 单位:s 1小时=3600秒
print(time // 3600) # 1小时=60分=3600秒
应用场景2:获取整数的高位数,去掉低位数
num2 = 2345
print(num2 // 10) # 234
思考:获取任意一个正整数的十位数
num3 = 785423431
num4 = num3 % 100
print(num4)
print(num4 // 10)
1.4 **幂运算
x ** y - 求x的y次方
print(3 ** 2)
print(4 ** 0.5)
print(4 ** -2)
print(8 ** (1/3))
2.比较运算符
2.1 比较运算符的运算结果一定是布尔值
2.2 支持连写表示范围
age = 56
print(18 <= age <= 28)
注意:print(age >=18 age and age <= 28) # 注意区别其它开发语言中的表示方法
3.逻辑运算符
3.1 and 逻辑运算符用在程序中连接多个条件形成复合条件的
1)应用场景:连接需要同时满足的两个条件,相当于生活中的“并且”
2)运算规则:
True and True - True
True and False - False
False and True - False
False and False - False
例:判断num是否能被3和7同时整除
num = int(input('请输入一个数num:'))
print('num是否能被3和7同时整除:',num % 3 == 0 and num % 7 ==0)
x = num % 3 == 0 and num % 7 ==0
if x == True:
print('能')
else:
print('不能')
练习:判断num是否是一个大于10的奇数
num = int(input('请输入一个数num:'))
print('num是否是一个大于10的奇数:',num % 2 != 0 and num > 10)
3.2 or 或
1)应用场景:如果要求两个或多个条件有一个成立就行,用or,相当于生活中的‘或者’
2)运算规则:
True and True - True
True and False - True
False and True - True
False and False - False
练习:判断year对应的年份是否为闰年
year = int(input('请输入一个年份:'))
闰年:闰年分为世纪闰年(能被400整除)和普通闰年(能被4整除但是不能被100整除)两种
print('year是否为闰年:',year % 400 == 0 or (year % 4 == 0 and year % 100 != 0))
print('year是否为普通闰年:',year % 4 == 0 and year % 100 != 0)
print('year是否为世纪闰年:',year % 400 == 0)
3.3 not 逻辑非
1)应用场景:对某个条件进行否定,相当于生活中的“不”
2)运算规则:
not True -> False
not False -> True
例1:写出age不大于18的条件
age = 28
print(not age > 18)
print(age <= 18)
例2:写判断num是否不等于100
num = 233
print(not num == 100)
print(num != 100)
4.赋值运算符:=、+=、-=、*=、/=、%=、//=、**=
注意:不管是什么样的赋值运算符,它们的目的都是将数据保存到变量中()
4.1 = 单一的赋值运算符
变量 = 数据 (将右边的数据直接保存到左边的变量中)
a = 10
4.2 复合的赋值运算符
变量 += 数据 (将变量中的原值取出与右边的数据进行加法运算再将结果赋值给这个变量)
a += 100
print(a)
b = 100
b -= 20 # 80
b *= 2 # 160
b //= 2 # 80
print(b)
5.运算符的优先级
5.1 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
5.2 数学运算符中:** > * / // % > + -
5.3 逻辑运算符中:and > or
5.4 有小括号()先算小括号里的