Python语法之用户交互与基本运算符
一、与用户交互
1、接收用户输入
python3中的input会把用户输入的所有内容都存成str类型
age = input("请输入您的年龄: ") # "内容"
print(age,type(age))
age=int(age)
print(age > 10) # "18" > 10
补充:int可以把纯数字组成的字符串转换整型
int("31") # ok
res = int(" 31 ") # ok
res = int("3 1") # no
print(res,type(res))
python2(***)
raw_input()与python3的input一模一样
input()要求用户必须输入一个明确的数据类型,输入什么类型就存成什么类型
2、输出
print("hello1",end='*')
print("hello2",end='*')
print("hello3",end='*')
msg = "my name is %s my age is %s" % ("egon", "18")
msg = "my name is %s my age is %d" % ("egon", 18)
msg = "my name is %s my age is %s" % ("egon", 18)
msg = "my name is %s my age is %s" % ("egon", [1,2,3])
print(msg)
二、基本运算符
1 算术运算符
x = 10
y = 20
print(x + y)
print(10 + 20)
print(10 // 3)
print(10 / 3)
print(10 % 3)
print(10 ** 2)
print(10 + 3.1)
了解:+与*
print("abc"+"def")
print([1,2,3]+[3,4,5])
print("abc"*3)
print([1,2,3]*3)
补充:python是一门解释型、强类型、动态语言(数据类型的概念比教强硬,严格,数据类型不能混用,所以是强类型;数据类型在代码运行时才知道,所以称为动态语言)
补充:go是一门编译型、强类型、静态语言
"18" + 10
x = 10
2. 比较运算符
判断是否相等,没有类型限制
print("abc" == 10) # 判断的是值及其类型是否相等
print("abc" != 10) # 判断的是值及其类型是否相等
> >= < <=:主要用于数字类型
print(10 > 3.1)
了解:> >= < <=也可以给其他类型用,但仅限于同类型之间
x = "abcdefg"
y = "abz"
print(x > y)
x = [111, 'abcdefg', 666]
y = [111,'z']
print(x > y)
3.赋值运算符
3.1 增量赋值
age = 18
age += 1 # age = age + 1
age -= 1 # age = age - 1
print(age)
3.2 链式赋值
x = y = z = 100
3.3 交叉赋值
x = 100
y = 200
temp = x
x = y
y = temp
del temp
x,y=y,x
print(x) # 200
print(y) # 100
3.4.解压赋值
salaries = [11, 22, 33, 44, 55]
mon1 = salaries[0]
mon2 = salaries[1]
mon3 = salaries[2]
mon4 = salaries[3]
mon5 = salaries[4]
mon1, mon2, mon3, mon4, mon5 = salaries
mon1, mon2, mon3, mon4, mon5 ,mon6= salaries # 错误
mon1, mon2, mon3, mon4 = salaries # 错误
print(mon1, mon2, mon3, mon4, mon5)
mon1,mon2,*_ ,last = salaries
print(mon1)
print(mon2)
print(_)
_,*x,_ = salaries
print(x)
了解:
x, y, z = {'k1': 111, 'k2': 222, 'k3': 3333}
x, y, z = "abc"
print(x,y,z)
4 逻辑运算符
逻辑运算符是用来运算条件的,那什么是条件???
只要结果为布尔值的都可以当做条件
总结:逻辑运算符,算的是显式的布尔值或者隐式的布尔值
4.1 not:取反
print(not 10 > 3)
print(not False)
print(not 123)
4.2 and: 链接多个条件,多个条件必须同时成立,最终结果才为True
print(10 > 3 and True and 'xx' == 'xx')
print(10 > 3 and False and 'xx' == 'xx')
print(10 > 3 and None and 'xx' == 'xx')
print(10 > 3 and True and 'xx' == 'xx' and 111)
4.3 or: 链接多个条件,多个条件但凡有一个成立,最终结果就为True
print(10 > 3 or False or 'xx' == 'xx')
print(0 or None or "" or 1 or True or 10 > 3)
强调:优先级not>and>or
print(3 > 4 and 4 > 3 or 1 == 3 and not 'x' == 'x' or 3 > 3)
(3 > 4 and 4 > 3) or (1 == 3 and not 'x' == 'x') or 3 > 3
ps:短路运算-》偷懒原则
5.成员运算符
print("abc" in "xxxabcxxxxx")
print(111 in [222,333,1111])
print('k1' in {'k1':111,'k2':222}) # 字典的成员运算判断的是key
print('k3' not in {'k1': 111, 'k2': 222}) # 推荐
print(not 'k3' in {'k1': 111, 'k2': 222}) # 不推荐
6. 身份运算符:is判断的是id是否一样
x = 100
y = x
print(x is y)
print(x == y)
总结:==成立is不一定成立,但是is成立==一定成立
id不同的情况下,值有可能相同,即2块不同的内存空间里可以存相同的值
id相同的情况下,值一定相同。x is y 成立===>x=y,必然成立
l1 = [111]
res=l1.append(222)
print(res == None) # 可以,但是不够好
print(res is None) # 推荐
Python语法之用户交互与基本运算符的更多相关文章
- python起源,变量,用户交互,流程语句
1.Python的起源 Python是一门解释型弱类型编程语言. 特点:简单.明确.优雅 2.Python解释器 CPython官方提供的, 内部使用C语言来实现 PyPy,一次性把我们的代码解释成字 ...
- python基础(4):用户交互、if判断、while循环、break和continue
1. 用户交互 使⽤input()函数,可以让我们和计算机互动起来 语法: 内容 = input(提⽰信息) 这⾥可以直接获取到⽤户输入的内容 content = input("你吃了么?& ...
- 1.3 Python基础知识 - 用户交互及传递参数
一.用户交互 用户交互方面,每种开发语言都有不同的方式,例如shell语言用的是,“read -p "What is your name ? " ”.python中是什么样子的呢 ...
- Python基础之用户交互、流程控制、循环语句
python的简洁性真的令人叹为观止,没有JAVA那种输入还要导个包,不学不知道,一学吓一跳啊! 我在学这些基础的时候,会把python和java.c做对比,这样更好的理解记忆! 用户交互(输入) i ...
- 4.python中的用户交互
学习完如何写'hello world'之后,我们还是不太满意,因为这样代码就写死了,以后运行的时候都只打印一局固定的话而已. 但是,我想在程序运行后,自己手动输入内容怎么办,此时就要学习如何使用用户交 ...
- python基础语法1 用户交互,基本数据类型,格式化输出,运算符
与用户交互: 输入: python2: input一定要声明你输入的类型 >>> input(">>:") >>:sean Traceba ...
- python用户交互与基本运算符
与用户交互 输入 获取用户输入 username = input('请输入您的用户名>>>:') '''将input获取到的用户输入绑定给变量名username''' print(u ...
- python数据类型、用户交互和运算符
基本数据类型 1.字典dict(dictionary) 能够准确的记录储存的信息 """ 大括号里面 放多个元素 之间用逗号隔开 元素为K:V键表示储存 K相对于V一般表 ...
- python语法学习第一天--变量、运算符、数据类型
变量:计算机中的一块内存,给变量赋值意味着将值存入内存中 python中变量不用类型声明(根据赋的值决定类型),但使用时(创建时)必须赋值(=赋值). 多个变量的赋值: ①a=b=c=1; ②a,b, ...
随机推荐
- 36、mysql数据库(dml)
36.1.表记录的增删改: 1.增加表记录: insert[into]tab_name (field1,filed2,.......) values (value1,value2,.......); ...
- mui 移动端网页双击事件处理
使用场景:需要在动态生成li列表数据中添加双击事件 定义事件 : var date1=null; function listdb(myKey) { var date2 = new Date(); if ...
- 本地无法访问虚拟机的tomcat
查看 firewalld防火墙 是否开启 命令: firewall-cmd --state 如果是 running 关闭 firewalld防火墙命令: service firewalld stop ...
- 并发王者课-铂金9:互通有无-Exchanger如何完成线程间的数据交换
欢迎来到<并发王者课>,本文是该系列文章中的第22篇,铂金中的第9篇. 在前面的文章中,我们已经介绍了ReentrantLock,CountDownLatch,CyclicBarrier, ...
- Java Set HashSet
import java.util.HashSet; import java.util.Set; /** Set存储特点:数据无序.不可重复 Set接口的实现类: HashSet:Set接口的主要实现类 ...
- acwing 4 多重背包问题 I
多重背包 有 n种物品 一共有 m大小的背包,每种物品的价值 大小 个数 为 s[i],v[i],num[i]; #include<bits/stdc++.h>//cmhao #defin ...
- css实现相框效果
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...
- yum安装GitLab-v11.11.8(git私服)
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.(跟github.gitee类似) 1. 安装依赖软件 $ yum -y install ...
- Hibernate框架(二)POJO对象的操作
POJO对象其实就是我们的实体,这篇博客总结一下框架对POJO对象对应数据库主键的生成策略,和一些对POJO对象的简单增删改查的操作. 一,Hibernate框架中主键的生成策略有三种方式: 1,数据 ...
- XCTF getit
一.查壳 是linux的文件.没加壳 二.拖入ida 分析一下逻辑,发现就是t的值就是flag. 写个exp就出来了. 三.exp分享 s='c61b68366edeb7bdce3c6820314b7 ...