1、接收用户的输入

在Python3:input会将用户输入的所有内容都存成字符串类型

列:
username = input("请输入您的账号:") # "egon",
print(username, type(username)) age = input("请输入的你的年龄: ") # age="18"
print(age, type(age)) 如果需要的话可以通过int()来转换成整型
age=int(age) # int只能将纯数字的字符串转成整型
print(age > 16)

在python2中有个raw_input()的用法与python3的input功能用法一模一样

在python2中的input()输入的是什么类型,就存成什么类型

2、字符串的格式化输出

2.1 %

值按照位置与%s一一对应,少一个不行,多一个也不行

列:
res="my name is %s my age is %s" %('egon',"18")
res="my name is %s my age is %s" %("18",'egon')
res="my name is %s" %"egon"
print(res)

以字典的形式传值,打破位置的限制

列:
res="我的名字是 %(name)s 我的年龄是 %(age)s" %{"age":"18","name":'egon'}
print(res)

%s可以接收任意类型

列:
print('my age is %s' %18)
print('my age is %s' %[1,23])
print('my age is %s' %{'a':333})
print('my age is %d' %18) # %d只能接收int
print('my age is %d' %"18")

2.2 str.format:兼容性好

按照位置传值

列:
res='我的名字是 {} 我的年龄是 {}'.format('egon',18)
print(res) res='我的名字是 {0}{0}{0} 我的年龄是 {1}{1}'.format('egon',18)
print(res)

打破位置的限制,按照key=value传值

列:
res="我的名字是 {name} 我的年龄是 {age}".format(age=18,name='egon')
print(res)

2.3 f:python3.5以后才推出

列:
x = input('your name: ')
y = input('your age: ')
res = f'我的名字是{x} 我的年龄是{y}'
print(res)

3、运算符

1、算数运算符

print(10 + 3.1)
print(10 + 3)
print(10 / 3) # 结果带小数
print(10 // 3) # 只保留整数部分
print(10 % 3) # 取模、取余数
print(10 ** 3) # 取模、取余数

2、比较运算符

、>=、<、<=、==、!=

print(10 > 3)

print(10 == 10)

print(10 >= 10)
print(10 >= 3) name=input('your name: ')
print(name == 'egon')

3、赋值运算符

3.1 =:变量的赋值####

3.2 增量赋值

age = 18
age += 1 # age=age + 1
print(age) age*=3
age/=3
age%=3
age**=3 # age=age**3

3.3 链式赋值

x=10
y=x
z=y
z = y = x = 10 # 链式赋值
print(x, y, z)
print(id(x), id(y), id(z))

3.4 交叉赋值

m=10
n=20
print(m,n)
交换值
temp=m
m=n
n=temp
print(m,n) m,n=n,m # 交叉赋值
print(m,n)

3.5 解压赋值

salaries=[111,222,333,444,555]

把五个月的工资取出来分别赋值给不同的变量名

mon0=salaries[0]
mon1=salaries[1]
mon2=salaries[2]
mon3=salaries[3]
mon4=salaries[4]

解压赋值

mon0,mon1,mon2,mon3,mon4=salaries
print(mon0)
print(mon1)
print(mon2)
print(mon3)
print(mon4) mon0,mon1,mon2,mon3=salaries # 对应的变量名少一个不行
mon0,mon1,mon2,mon3,mon4,mon5=salaries # 对应的变量名多一个也不行

引入*,可以帮助我们取两头的值,无法取中间的值

取前三个值

x,y,z,*_=salaries=[111,222,333,444,555] # *会将没有对应关系的值存成列表然后赋值给紧跟其后的那个变量名,此处为_
print(x,y,z)
print(_) 取后三个值
*_,x,y,z=salaries=[111,222,333,444,555]
print(x,y,z) x,*_,y,z=salaries=[111,222,333,444,555]
print(x,y,z) salaries=[111,222,333,444,555]
_,*middle,_=salaries
print(middle) 解压字典默认解压出来的是字典的key
x,y,z=dic={'a':1,'b':2,'c':3}
print(x,y,z)

最新文章

  1. TestNG 与 Junit的比较
  2. source insight 编程风格(持续更新)
  3. 运行WampServer时,提示Exception Exception in module wampmanager.exe at 000F15A0.解决办法
  4. ios 删除系统从相册压缩的视频
  5. Html-input文本框只能输入数字
  6. 浅谈线程池(上):线程池的作用及CLR线程池
  7. 手动导出Excel及Excel导出原理探究
  8. [Android开发常见问题-18] Connection to https://dl-ssl.google.com refused
  9. JavaSE思维导图(七)
  10. hdu 1998 奇数阶魔方(找规律+模拟)
  11. Android 开场动画
  12. lodash源码分析之缓存使用方式的进一步封装
  13. 数据故障的恢复-MSSQL ndf文件大小变为0 KB恢复过程
  14. Python学习笔记五
  15. zuul1.3源码扒一扒(1)
  16. 常见的anaconda的操作
  17. Spring boot 配置 log4j2.xml
  18. spring-boot-2.0.3之redis缓存实现,不是你想的那样哦!
  19. 最强Mac电脑 工作站级别一体机iMac Pro公布
  20. JSP表单提交与接收

热门文章

  1. Unity中使用C#的null条件运算符?.的注意事项
  2. 02ARM体系结构
  3. Samtec大数据技术解决方案
  4. ThreadLocal源码探究 (JDK 1.8)
  5. MVC05
  6. 峰哥说技术: 05-Spring Boot条件注解注解
  7. Python 解密JWT验证苹果登录
  8. 内网渗透之跨边界传输 - LCX转发
  9. redis的批量操作命令pipeline(PHP实现)
  10. 实操教程丨使用Pod安全策略强化K8S安全