用户交换
一、用户交换
1.1定义:用户交换就是人往计算机中input/输入数据,计算机print/输出结果。
1.2目的:为了让计算机能够像人一样与用户沟通
>>> input("your name:")#输入数据
your name:sean
'sean'
>>> print("hello world !")#输出结果
hello world !
1.3 python2 与python3的区别
python2 input :一定要声明你输入的类型
>>> input(">>:") >>:sean# 没有告知变量值得类型,引发错误 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'sean' is not defined
>>> input(">>:")
>>:"sean"#输入的是字符串'str'
'sean'#可以正常的输出
>>> input(">>:")
>>:1#输入int
1#输入int
>>> input(">>:")
>>:[1,2] #输入list
[1, 2]输出list
>>>
python3 接收用户的输入,无论用户输入的是什么类型,最终返回的一定是字符串“str”
>>> name = input("dfhfghgf : ")
dfhfghgf : David #输入内容
>>> print(name)
David
>>> print(type(name))
<class 'str'>#字符串
>>> name = input("dfhfghgf : ")
dfhfghgf : 1234 #输入内容
>>> print(name)
1234
>>> print(type(name))
<class 'str'> #字符串
python 2 中可以用raw_input 跟 python 3中的inptut 一个作用
二、基本数据类型
1.int (整型)如年龄 班级人数等
python2
在这个区间[-24XXXXXXXX,24XXXXXXXX] : 变量type:int
如果不在这个区间 type:long
python3: type:int
>>> i = 29459696979939695959696#
>>> print(type(i))
<class 'int'>
2.float(浮点型)如身高 体重 等
>>> i = 25566.2556 #带小数点
>>> print(type(i))
<class 'float'>
3.str (字符串)
定义:有一些描述性的信息 比如个人的爱好,简介等
字符串的引号没有 区别 可以“ ” ' ' 但是不能混用 不能 “足球‘
如果字符串还需要引号,就必须嵌入
比如: "ab 'cds' "
# 单引号
# s1 = 'sean'
# print(s1)
# 双引号
# s2 = "sean"
# print(s2)
# 三引号
# s3 = '''sean'''
#
# s4 = """sean"""
#
# print(s3)
# print(s4)
# s5 = 'dadada"dada"'
>>> i = "David"
>>> print(type(i))
<class 'str'>#字符串
python2
str本质上其实是一个拥有8个bit位的序列
>>> s1 = 'sean'
>>> type(s1)
<type 'str'>
>>> s1 = s1.decode("utf-8")
>>> type(s1)
<type 'unicode'>
>>> s1
u'sean'
python3
str 本质上其实是unicode序列
>>> ss1 = 'sean'
>>>
>>> type(ss1)
<class 'str'>
>>>
>>> ss1 = ss1.encode('utf-8')
>>> ss1
b'sean'
>>>
>>> type(ss1)
<class 'bytes'>
1024G = 1T
1024M = 1G
1024KB = 1M
1024B = 1KB
1B = 8bit
字符串可以拼接是开辟一个新的内存空间,将你拼接后的值放进去
>>> s1 = "hello"
>>> s2 = "world"
>>> print(s1+s2) #拼接处理
helloworld
4.列表(list)
定义:存一个或者多个不同类型的值,每个值之间用逗号(,)隔开
在编程中数数是从0开始的
>>> t = ["abcf","大象",['read','鲜花',12344],12334]
>>> print(type(t))
<class 'list'>#列表
>>> print(t)
['abcf', '大象', ['read', '鲜花', 12344], 12334]
从其中取某些值的方法按照下面操作
>>> t = ["abcf","大象",['read','鲜花',12344],12334]
>>> print(t[2][1])
鲜花
5字典的类型(dict)
定义方法:通过大括号存储数据,通过key:value 这种用映射关系定义键对值,
每对键值通过逗号进行分隔
>>> s1 = {"name": "Davis","age": 20, "hobby":["篮球","football","running"],"id":1235}
>>> print(type(s1))
<class 'dict'>#字典
>>> print(s1["age"])
20
>>> print(s1["hobby"])
['篮球', 'football', 'running']
布尔类型
主要判断事物的对错
一般布尔类型不会单独定义
False True
>>> print(1<2)
True#布尔类型
>>> a = 2
>>> b = 2
>>> print(a==b)
True
上面的 == 代表的是value相等
>>> a = 2
>>> b = 2
>>> print(a is b)
True
上面的"is" 的含义指的是id相同
三、格式化输出
定义:把一段字符串里面的某些内容替换 之后再输出,就是格式化。
我们常用的 :
1.%s:可以接收任意类型的变量;
2.%d:只能接收数字类型的,python 3中 不常用
.format
-
f-string(python 3.6以后才有的特性)
举例如下:
name = input(" :") month = input(':') Phone_Bill = input(" :") Balance = input(" :") print("你好,亲爱的%s,你%s月份的话费是%s元,余额是%s元"%(name,month,Phone_Bill,Balance))#针对的%s
name = input(" :") month = input(':') Phone_Bill = input(" :") Balance = input(" :") # print("你好,亲爱的%s,你%s月份的话费是%s元,余额是%s元"%(name,month,Phone_Bill,Balance)) print("你好,亲爱的%s,你%s月份的话费是%s元,余额是%d元"%(name,month,Phone_Bill,23))#针对的是%d
name = input(" :") month = input(':') Phone_Bill = input(" :") Balance = input(" :") # print("你好,亲爱的%s,你%s月份的话费是%s元,余额是%s元"%(name,month,Phone_Bill,Balance)) # print("你好,亲爱的%s,你%s月份的话费是%s元,余额是%d元"%(name,month,Phone_Bill,23)) print("你好,亲爱的{},你{}月份的话费是{}元,余额是{}元".format(name,month,Phone_Bill,23))# 针对.format的使用 print("你好,亲爱的{name},你{month}月份的话费是{Phone_Bill}元,余额是{Balance}元".format(name =month,month = name,Phone_Bill = Phone_Bill,Balance = 23))# .format的一种 用法
name = input(" :") month = input(':') Phone_Bill = input(" :") Balance = input(" :") print(f"你好,亲爱的{name},你{month}月份的话费是{Phone_Bill}元,余额是{Balance}元")#f的使用方法
四、基本运算符
4.1算术运算符
a = 9 b = 2 print(a+b) print(a-b) print(a*b) print(a/b) print(a//b) print(a%b) print(a**b)
4.2比较运算符
比较运算用于两个值进行比较,返回的是布尔值True或者
False
a = 9
b = 2
print(a==b)
print(a!= b)
print(a>b)
print(a>=b)
print(a<b)
print(a<=b)
4.3赋值运算符
4.3.1 增量赋值
x = 10
# x += 1
# print(x)
# x -= 1
# print(x)
# x *= 2
# # print(x)
# x %= 3
# print(x)
x **= 3
print(x)
4.3.2链式赋值
我们想把一个值赋值给多个变量
可以这么操作
x = y = z = 1
print(x,y,z)
4.3.3 交叉赋值
可以让2变量的值交换过来
a = 1
b = 2
a,b =b,a
print(a,b)
4.3.4解压赋值
l1 = [1,2,3,4]#相当于一个压缩包
a,b,c,d = l1
print(a,b,c,d)
注意:等号左边的变量名个数必须和右面的包含 值个数相同,不然报错。
**如果我们想要只取头尾,可以用*_来匹配**
l1 = [1,2,3,4,5,6,7]
#*_,a,b,c,d = l1
a,b,c,d,*_ = l1 # 用*_ 来匹配的
print(a,b,c,d)