Python学习一:变量与数据类型、表达式、条件语句

《毫无障碍学Python》邓文渊著 学习笔记

变量与数据类型、表达式、条件语句

变量

score = 80 #Python变量不声明就可使用,Python会根据变量值设定数据类型,该score为int型
fruit = "香蕉"  # fruit数据类型为字符型
a = b = c =20  #多变量一起赋值
age = 18 ;num = 99  #一行赋多值
del score  #删除变量: del 变量名

一、变量与数据类型

1.变量命名规则

  1. 由字母、数字、_、中文(Python3.x支持,尽量不用)组成
  2. 首字母为字母、_、中文
  3. 区分大小写
  4. 不可与保留字相同

2.数据类型

  1. 整型int:不含小数点的数值
  2. 浮点型float:包含小数点
  3. 布尔类型bool:True、False
  4. 字符串类型str:用双引号“”或‘’单引号包含起来的变量,若字符串包含引号本身,可用另一种引号包住字符串 str1 = ‘小明说:“你好!”’,变量值为:小明说:“你好!”
  5. 逃逸符 \x(\开头 x为特定字符):\o 八进制、\x 十六进制、\n 换行…

3.print、type命令

  1. print输出制定对象内容 print(对象1,对象2,sep=“分隔符”,end = “终止符”))
    分隔符separator(若输出多个对象用于设置指定符号分隔,默认空格符“ ”),中止符(输出完毕后自动添加的字符,默认\n
    print(20,30,50,sep = "*",end = " ") #输出结果20*30*50
  2. print命令支持参数格式化功能,%s代表字符串、%d代表整数、%f代表浮点数
    print(对象 % (参数行))
name = "张三"
a = 20
print("%s今年%d岁了!"%(name,a))#也可用字符串format方法格式化{}表示参数位置 print(字符串.format(参数行))
print("{}今年{}岁了!".fomat(name,a))

参数格式化方式可精确控制输出位置:%5d(固定输出5个字符宽度,少于5左边填空格符,大于5全部输出),%5s(同上),%8.2f(固定输出8个字符宽度含小数点,小数输出两位,整数少填空格,小数少填0)

sno = 1234567 
print("学号1:%10d,学号2:%5d"%(sno,sno))
score = 87.5
print("语文成绩:%7.3f"%(score))
运行结果
学号1:   1234567,学号21234567
语文成绩: 87.500
  1. type会取得对象数据类型 type()
name = "张三"
print(type(name),type(100.00))
运行结果
<class 'str'> <class 'float'>

4.数据类型的转换

(1)数据类型自动转换

  1. 整形 + 浮点型——>整型先转浮点型,再相加
  2. 数值 + 布尔类型——>布尔类型转换为数字(True->1,False->0),再相加

(2)强制类型转换

int() 强转为整形、float() 强转为浮点型 、str() 强转为字符串型

二、表达式

  1. 表达式 = 操作数 + 运算符
  2. 单目运算符:只有一个操作数,如:not,-(-100)…
  3. 双目运算符:具有两个操作数:and、100-23…

1.input命令

input让用户由"标准输入"设备(键盘)输入数据 input语法: 变量 = input([提示字符串])Enter键输入结束

age = input("请输入年龄:")

2.运算符

  • 算数运算符 :+、=、*、/、%、//(取商的整数部分)、**(操作数1 的 操作数2 次方)
n1 = 46//5	#取商整
n2 = 2**6		# 2的6次方
运行结果
9 64
  • 关系运算符 :== 、!=、 <、 >、 >=、 <= 结果为True或False
    -** 逻辑运算符** :not(取反), and(同真为真), or(同假才假) 结果为True或False
  • 复合赋值运算符 :+=,-=,*=,%=,/=,//=,**=
i1 = i2 = 10
i1//=4
i2**=2

三、条件语句

Python流程序控制命令两大类:

  • 条件:条件表达式运算结果为True,执行跳跃
  • 循环:条件表达式运算结果为True,执行循环

1.条件

(1)单向条件 (if…)

if(条件表达式): 程序块 (括号可移除)

pw = input("Please input password:")
if(pw=="1234"):#python使用冒号和缩进表示程序块,缩进用一个Tab或四个空格
    print("Welcome!")

(2)双向条件 (if…else…)

if(条件表达式):
    程序块1
        else:
            程序块2

pw1 = input("Please input password:")
if(pw1=="12345"):
    print("Welcome!")
else:
    print("Password Wrong!")

(3)多向条件(if…elif…else…)

score = input("Please input you score:")
if(int(score)>=90):
    print("great!")
elif(int(score)>=80):
    print("A")
elif(int(score)>=70):
    print("B")
elif(int(score)>=60):
    print("C")
else:
    print("Fail!")

(4)条件嵌套

money = int(input("Please input your sum of consumption:"))
if(money >= 10000):								# money大于一万打折
	if(money >=100000):		
		print(str(money*0.8),end="元\n")		# money大于十万打八折
	elif(money >= 50000):		
		print(str(money*0.85),end="元\n")		# money5~10万打八五折
	elif(money >= 30000):		
		print(str(money*0.90),end="元\n")		# money3~5万打九折
	elif(money >= 10000):		
		print(str(money*0.95),end="元\n")		# money1~3万打九五折
else:									
	print(str(money),end="元\n")				# money一万以下不打折

你可能感兴趣的:(python学习)