一、与用户交互

1、什么是与用户交互

程序等待用户输入一些数据,然后程序执行完毕后为用户反馈信息

2、为何程序要与用户交互

为了让计算机能够像人一样与用户的交互

3、如何用

在python3中:
input

在python3中,input会将用户输入的任何内容都存成字符串类型

  1. name=input('请输入你的账号名: ') #name='123'
  2. print(name,type(name))

在python2中:raw_input会将用户输入的任何内容都存成字符串类型

  1. C:\Users\oldboy>python2
  2. Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
  3. Type "help", "copyright", "credits" or "license" for more information.
  4. >>> name=raw_input('>>>>>>>>>>>>>>>>>>>>>>>>>>>>: ')
  5. >>>>>>>>>>>>>>>>>>>>>>>>>>>>: egon
  6. >>>
  7. >>>
  8. >>>
  9. >>> print(name)
  10. egon
  11. >>> print(name,type(name))
  12. ('egon', <type 'str'>)
  13. >>>
  14. >>>
  15. >>> name=raw_input('>>>>>>>>>>>>>>>>>>>>>>>>>>>>: ')
  16. >>>>>>>>>>>>>>>>>>>>>>>>>>>>: 1231231231232
  17. >>>
  18. >>>
  19. >>> print(name,type(name))
  20. ('1231231231232', <type 'str'>)
  21. >>>
  22. >>>
  23. >>> name
  24. '1231231231232'
  25. >>> name,type(name)
  26. ('1231231231232', <type 'str'>)

在python2中:input要求用户必须输入一个明确的数据类型,输入什么类型就存成什么类型

  1. >>> x=input("输入: ")
  2. 输入: egon
  3. Traceback (most recent call last):
  4. File "<stdin>", line 1, in <module>
  5. File "<string>", line 1, in <module>
  6. NameError: name 'egon' is not defined
  7. >>> x=input("输入: ")
  8. 输入: 'egon'
  9. >>>
  10. >>> x,type(x)
  11. ('egon', <type 'str'>)
  12. >>>
  13. >>>
  14. >>>
  15. >>> x=input("输入: ")
  16. 输入: [1,2,3]
  17. >>>
  18. >>> x,type(x)
  19. ([1, 2, 3], <type 'list'>)
  20. >>>
  21. >>>
  22. >>> y=raw_input('####: ')
  23. ####: [1,2,2,3]
  24. >>>
  25. >>> y,type(y)
  26. ('[1,2,2,3]', <type 'str'>)

二、格式化输出

  1. name=input('please input your username:')
  2. age=input('please input your age:')
  3. print('my name is',name,'my age is',age)
  4. print('my name is %s,my age is %s' %(name,age))
  5.  
  6. '''
  7. my name is 输入的用户名,my age is 输入的年龄
  8. '''
  9.  
  10. print('my name is %s my age is %s' %(18,'egon'))
  11.  
  12. print('my name is %s my age is %d' %('egon',18))
  13. print('my name is %s my age is %s' %('egon',18))
  14. print('my name is %s my age is %s' %('egon',[1,2,3])) # %s可以接收任意类型的值
  15. print('my name is %s my age is %d' %('egon','xxx')) # %d只能接收数字类型

三、基本数据类型

数字类型:int与float

1、整型:int

作用:记录年龄,等级,QQ号,各种号码
定义:

  1. print(age,type(age))

2、浮点型:float

作用:记录身高、体重、薪资
定义:

  1. salary=3.1 #salary=float(3.1)
  2. print(salary,type(salary))

字符类型:str

作用:记录描述性质的数据,比如人的名字、性别、家庭地址、公司简介
定义:在引号内按照从左到右的顺序依次包含一个个字符,引号可以是单引号、双引号、三引号

  1. name1='egon1'
  2. print(type(name1))#str
  3.  
  4. name2="egon2"
  5. print(type(name2))#str
  1. info="""
  2. compay
  3. name:OLDBOY
  4. addr:SH
  5. """ # 三引可以存多行
  6. print(type(info))
  7. print(info)
  8.  
  9. # 注意引号的配对
  10. print("my name is 'egon'")
  11. print('my name is "egon"')

使用:

  1. x=1
  2. y=2
  3. print(x+y)
  4. msg1='hello'
  5. msg2='world'
  6. print(msg1+msg2)

强调:

1、字符串之间可以相加:

  1. '1111'+‘2222

2、字符串相加是新申请内存空间然后拷贝相加的字符串到新的空间中,效率不高

  1. print('my name is '+'egon'+' my age is '+'18')

3、字符串还可以做乘法运算

  1. print('hello'*10)
  2. print('='*100)

列表类型:list

作用:记录/存多个值,可以方便地取出来指定位置的值,比如人的多个爱好,一堆学生姓名
定义:在[]内用逗号分隔开多个任意类型的值

  1. l=[10,3.1,'egon',['a','b']] # l=list([10,3.1,'egon',['a','b']])
  2. print(l)#
  1. [10,3.1,'egon',['a','b']]
  1. print(l[0]) print(l[2]) print(l[3]) print(l[3][1])
  1. l1=['a','b',['c',['d',]]]
  2. print(l1[2][1][0])
  3. print(type(l))

使用:

  1. hobbies="read music sleep eat play"
  2. hobbies=["read","music","sleep","eat","play"]
  3. print(hobbies[2])
  4.  
  5. students_info=[
  6. ['egon',18,['play',]],
  7. ['alex',18,['play','sleep']]
  8. ]
  9. print(students_info[1][2][0])

字典类型:dict

作用:记录多个key:value值,优势是每一个值value都有其对应关系/映射关系key,而key对value有描述性的功能
定义: 在{}内用逗号分隔开多个key:value元素,其中value可以是任意的数据类型,而key通常应该是字符串类型

  1. info={'name':'egon','sex':'male','age':18} #info=dict({'name':'egon','sex':'male','age':18})
  2. print(type(info))
  3.  
  4. print(info['name'])

布尔类型:bool

作用:用来作为判断的条件去用
定义:

  1. tag=True # tag=bool(True)
  2. tag=False
  3. print(type(tag))

通过判断去得到布尔值

  1. age=18
  2. print(age > 20)
  3. print(age >= 20)

==比较的是值

  1. print(age == 18)

is:比较的是id是否相等

  1. x=1
  2. y=x
  3. print(x is y)

强调:id相等值一定相等,id不等但是值仍然可以相等

  1. res=3 > 1
  2. print(id(res))
  3.  
  4. res2=1 < 10
  5. print(id(res))

四、运算符

算数运算

  1. res=1 + 3
  2. print(res)#4
  3. print(1 + 3)#4
  4. print(10 / 3) #3.3333333333333335结果保留小数部分
  5. print(10 // 3) #3 只保留整数部分
  6. print(10 % 3) #1 取余数
  7. print(2**3)#8

比较运算:== != > < >= <=

了解知识:

数字之间可以互相比较大小

  1. print(10 > 3)
  2. print(10 > 3.1)

而字符串只能与字符串比较大小(按照对应位置的字符参考ASCII表去比较的)

  1. msg1='hello'
  2. msg2='z'
  3. print(msg1 > msg2)
  4.  
  5. # A-Za-z
  6. print('a' > 'Z')
  7. print('Z' > 'Y')=
  8. print(len('hello') > 3)
  9. print('a' > 3)

列表只能与列表比较大小(按照对应位置的值依次比较,对应位置的值必须是相同的类型)

  1. l1=[1,2,3]
  2. l2=[10,]
  3. print(l2 > l1)#True
  4. l3=[10,2,'b',3]
  5. l4=[10,2,'b','c']
  6. print(l3 > l4)#报错,最后比的是strint,两者无法比较

赋值运算

  1. age=18
  2. # 增量赋值
  3. age+=1 #age=age+1
  4. print(age)
  5.  
  6. # 链式赋值
  7. x=100
  8. y=x
  9. z=x
  10. x=z=y=100
  11. print(id(x),id(y),id(z))
  12.  
  13. # 交叉赋值
  14. m=1000
  15. n=2000
  16.  
  17. temp=m
  18. m=n
  19. n=temp
  20. n,m=m,n
  21. print(m,n)
  22.  
  23. # 解压赋值
  24. salaries=[11,22,33,44,55,]
  25. mon1=salaries[0]
  26. mon2=salaries[1]
  27. mon3=salaries[2]
  28. mon4=salaries[3]
  29. mon5=salaries[4]
  30. mon1,mon2,mon3,mon4,mon5=salaries
  31. print(mon1,mon2,mon3,mon4,mon5)
  32. # 等号右面包含的值的个数必须与等号左边变量名的个数一致
  33. mon1,mon2,mon3,mon4,mon5,mon6=salaries
  34. mon1,mon2,mon3,mon4,=salaries
  35.  
  36. _=3333
  37. print(_)
  38. mon1,mon2,_,_,_=salaries
  39. mon1,mon2,*_=salaries
  40. print(mon1)
  41. print(mon2)
  42.  
  43. salaries=[11,22,33,44,55,]
  44. first=salaries[0]
  45. last=salaries[4]
  46.  
  47. first,_,_,_,last=salaries
  48. first,*_,last=salaries
  49. print(first)
  50. print(last)
  51.  
  52. age=20
  53. sex='female'

逻辑运算

and:连接左右两个条件,只有在两个条件同时成立的情况下最终结果才为True

  1. print(age > 18 and age < 26 and sex == 'female' and 1 > 3)

or:连接左右两个条件,但凡有一个条件成立最终结果就为True

  1. print(1 > 3 or 2 > 4 or 'x' == 'y' or 1==1)

not

  1. print(not 1 > 3)
  2. print(not (1 > 3 or 2 > 4 or 'x' == 'y' or 1==1))

03-Python入门学习-Python基础的更多相关文章

  1. 【Python教程】《零基础入门学习Python》(小甲鱼)

    [Python教程]<零基础入门学习Python>(小甲鱼) 讲解通俗易懂,诙谐. 哈哈哈. https://www.bilibili.com/video/av27789609

  2. 《零基础入门学习Python》【第一版】视频课后答案第001讲

    测试题答案: 0. Python 是什么类型的语言? Python是脚本语言 脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序.以简单的方 ...

  3. 零基础入门学习Python(1)--我和Python的第一次亲密接触

    前言 最近在学习Python编程语言,于是乎就在网上找资源.其中小甲鱼<零基础入门学习Python>试听了几节课,感觉还挺不错,里面的视频都是免费下载,小甲鱼讲话也挺幽默风趣的,所以呢,就 ...

  4. 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...

  5. 学习《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    初学python入门建议学习<零基础入门学习Python>.适合新手入门,很简单很易懂.前一半将语法,后一半讲了实际的应用. Python3入门必备,小甲鱼手把手教授Python,包含电子 ...

  6. python入门学习:9.文件和异常

    python入门学习:9.文件和异常 关键点:文件.异常 9.1 从文件中读取数据9.2 写入文件9.3 异常9.4 存储数据 9.1 从文件中读取数据 9.1.1 读取整个文件  首先创建一个pi_ ...

  7. python入门学习:8.类

    python入门学习:8.类 关键点:类 8.1 创建和使用类8.2 使用类和实例8.3 继承8.4 导入类 8.1 创建和使用类   面向对象编程是最有效的软件编写方法之一.在面向对象编程中,你编写 ...

  8. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  9. python入门学习:6.用户输入和while循环

    python入门学习:6.用户输入和while循环 关键点:输入.while循环 6.1 函数input()工作原理6.2 while循环简介6.3 使用while循环处理字典和列表 6.1 函数in ...

  10. python入门学习:5.字典

    python入门学习:5.字典 关键点:字典 5.1 使用字典5.2 遍历字典5.3 嵌套 5.1 使用字典   在python中字典是一系列键-值对.每个键都和一个值关联,你可以使用键来访问与之相关 ...

随机推荐

  1. vue-cli项目生成

    安装vue-cli C:\Users\fei>npm install -g vue-cli npm WARN deprecated coffee-script@1.12.7: CoffeeScr ...

  2. 统计iis日志第一例的次数

    统计iis日志第一例(日期)出现的次数 IIS日志文件格式: #Software: Microsoft Internet Information Services 7.5 #Version: 1.0 ...

  3. Docker:容器间互联的应用zabbix监控项目 [十]

    一.docker容器间的互联 1.创建两个容器 [root@luoahong ~]# docker run -d --name luoahong httpd:latest 8f771f043391e7 ...

  4. java8 按条件过滤集合

    //黄色部分为过滤条件list.stream().filter(user-> user.getId() > 5 && "1组".equals(user. ...

  5. 部署自己的服务器ubuntu

    一直都是在公司的服务器上工作,想搞点自己的idea比较不方便,所以近期租了要给自己的阿里云服务器. 以下为必要的软件的安装流程: jdk+jre: 1.去官网下载 jdk-linux版本: 2.解压压 ...

  6. DevExpress设置默认皮肤及各种皮肤样式

    DevExpress设置默认皮肤及各种皮肤样式 设置默认皮肤代码: 在程序入口Program.cs里添加如下代码 引用using DevExpress.LookAndFeel; UserLookAnd ...

  7. 个人认为一个比较完整,基于tp5平台,可快速开发的B2C平台

    现在全民创业,做电商的人很多,大大小小的技术公司也很多,报价也很奇葩,从100到十万的都有,把人都能转晕,有朋友问我,你们创业是不是很赚钱,其实,外行不知道内行的苦,创业控制成本第一,活下来才能赚钱. ...

  8. 初步认识Promise

    在解释什么是Promise之前,先看一道练习题,做完练习题也就知道Promise到底是干嘛用的了. 假设现在有个需求:你要封装一个方法,我给你一个要读取文件的路径,你这个方法能帮我读取文件,并把内容返 ...

  9. 第29月第27天 Error: Multiple commands produce

    1. 解决方法可以有两种,一种是不使用New Build System,在File > Project/Workspace Settings中的Share Project/Workspace S ...

  10. c#管理文件系统

    using System; using System.Collections.Generic; using System.IO; using static System.Console; /*Syst ...