1、与用户交互
-
接收用户输入
在Python3中:
使用input将用户输入的所有内容都存成字符串类型
username = input("请输入您的账号:")
在Python2中:
raw_input():用法与Python3的input一模一样 input(): 要求用户必须输入一个明确的数据类型,输入的是什么类型,就存成什么类型
-
格式化输出
目的:格式与内容分离,制作复杂的字符串内容模板,让某些位置变成动态可输入的。
2.1%
# 值按照位置与%s一一对应,少一个不行,多一个也不行
res = "my name is %s my age is %s" %('yu',18)
info = "my name is %s my age is %s" %(55,'yu')
data = "my name is %s" %'yu'
print(res \n info \n data)
输出结果:
my name is yu my age is 18
my name is 55 my age is yu
my name is yu
# %s可以接收任意类型
print("my name is %s" %'11')
print("my name is %s" %'我爱你')
print("my name is %s" %[1,12])
print("my name is %s" %{'a':1})
print("my name is %d" %18) # %d只能接受int类型
输出结果:
my name is 11
my name is 我爱你
my name is [1, 12]
my name is {'a': 1}
my name is 182.2 str.format:兼容性好,可按照位置传值,也可以打破位置的限制传值
# 按照位置传值
res = "my name is {} my age is {}".format('yu',18)
print(res)
输出结果:
my name is yu my age is 18
res='我的名字是 {0}{0}{0} 我的年龄是 {1}{1}'.format('egon',18)
print(res)
输出结果:
我的名字是 egonegonegon 我的年龄是 1818
# 打破位置传值
res = "my name is {name} my age is {age}".format(name='yu',age=18)
print(res)
输出结果:
my name is yu my age is 18
# 了解知识
2.4 填充与格式化
# 先取到值,然后在冒号后设定填充格式:[填充字符][对齐方式][宽度]
# *<10:左对齐,总共10个字符,不够的用*号填充
print('{0:*<10}'.format('开始执行')) # 开始执行******
# *>10:右对齐,总共10个字符,不够的用*号填充
print('{0:*>10}'.format('开始执行')) # ******开始执行
# *^10:居中显示,总共10个字符,不够的用*号填充
print('{0:*^10}'.format('开始执行')) # ***开始执行***
2.5 精度与进制
print('{salary:.3f}'.format(salary=1232132.12351)) #精确到小数点后3位,四舍五入,结果为:1232132.124
print('{0:b}'.format(123)) # 转成二进制,结果为:1111011
print('{0:o}'.format(9)) # 转成八进制,结果为:11
print('{0:x}'.format(15)) # 转成十六进制,结果为:f
print('{0:,}'.format(99812939393931)) # 千分位格式化,结果为:99,812,939,393,9312.3 f:python3.5以后才推出
x = input('your name: ') # yu
y = input('your age: ') # 18
res = f'我的名字是{x} 我的年龄是{y}'
print(res) # 我的名字是yu 我的年龄是18
2、基本运算符
-
算数运算符:+、-、*、/、//、%、**
print(1+1.2) # 2.2
-
赋值运算符
-
变量的赋值:=
x = 1
print(x) # 1 -
增量赋值:+=、-=、*=、/=、//=、%=、**=
age = 18
age += 1
print(age) # 19 -
链式赋值
x = y = z = 1
print(x,y,z) # 1 1 1 -
-
交叉赋值
name = 18
age = 'yu'
name,age = age,name
print(name,age) # yu 18 -
解压赋值:将容器中的值分别取出来赋值给不同的变量名
x,y,z,m,n=salaries=[111,222,333,444,555]
print(x,y,z,m,n) # 111 222 333 444 555 -
# 解压字典默认解压出来的是字典的key
x,y,z=dic={'a':1,'b':2,'c':3}
print(x,y,z) # a b c -
引入:‘*’
# 没有对应的都会被*存成一个列表(注意:任何类型的解压都会存成一个列表),交给后面的变量名。
# _: 通常指被废弃掉的变量,做一个占位符而已,约定俗成
# *号再解压赋值中,只能出现一次
*_,x,y,z=salaries=[111,222,333,444,555]
print(x,y,z) # 333 444 555 -
-
-
比较运算符>、>=、<、<=、==、!=
print(1>2) # False
pringt(1==1) # True