python入门03

python入门day3

昨日内容回顾

§一、计算机的五大组成部分详解和三大核心硬件

1、计算机的五大组成部分详解

在计算机的五大组成部分中:控制器、运算器、存储器、输入设备、输出设备
#CPU=控制器+运算器

2、计算机的三大核心硬件

  #当我们把程序从硬盘放到内存后,速度极快的CPU就直接在内存中运行程序,比在硬盘中要提高了很多效率。
  
  内存在其中起了两个作用:
1.保存从硬盘读取的数据,提供给CPU使用 
2.保存了CPU的一些临时执行的结果,以便CPU下次使用或者保存到硬盘中

"""
  举一个接近我们生活的例子:

  如果说把硬盘比喻成一个大仓库,CPU比喻成加工车间,那么内存就是一个临时的小仓库。从距离上来说, 相比内存到CPU的距离和硬盘到内存的距离,内存和CPU的距离更短。

  硬盘(大仓库)用来保存车间需要用的原料和最终生产出来的商品。仓库太大,取出原料和存储商品太慢,耗时间。

  内存(临时小仓库):原料会先放到这里,小仓库,可以很快的找到需要的原料或商品。

  CPU(车间):从内存(小仓库)里拿到原料,生产商品。中间会有半成品,半成品可以放在内存(小仓库)里。

  以这种方式,车间的生产速度就会提高。
  
"""

CPU内存外存的运行速度的快慢,导致了为了效率最大化CPU与外存而形成了存储数据依靠内存作为中介的特点,形成了底层逻辑,由硬件之间的逻辑也导致了编程时的逻辑。

所以我们也应该关注硬件的特点,才能更加了解软件运行和编程背后的逻辑

3、操作系统 Operating System

协调、管理、调度计算机各个硬件的工作

#百度百科:操作系统与计算机硬件的发展息息相关,操作系统可以对计算机系统的各项资源板块开展调度工作,其中包括软硬件设备、数据信息等,运用计算机操作系统可以减少人工资源分配的工作强度,使用者对于计算的操作干预程度减少,计算机的智能化工作效率就可以得到很大的提升。

人话就是,通过操作系统可以更高效率的使用硬件,减少重复的操作

4、编程、编程语言及编程语言的发展史

1.编程语言是任何计算机之间交流的媒介

2.编程:程序员将自己的思维逻辑和想法用计算机能够读懂的语言写下来的过程,其结果是产生一堆文件

3.编程语言发展史
机器语言 >>> 汇编语言 >>> 高级语言#c++ java python golang等等
"高级语言千变万化,但底层逻辑几乎一致,掌握一门了解其他就会很快"

5、编程语言的分类

#高级语言都需要翻译
1.编译型语言#c++ 
2.解释型语言#python

6、python解释器

1.python解释器的版本
python 2.7 #2020年后停止更新,常见于18年左右的项目
python 3.6/3.8/3.4/3.5#3.4 3.5 3.6都为2020年后的常用版本,3.8为现在常见常用的版本

7、小白在macOS上初学习python的体验和想法

1.何为终端terminal?
   当windows可以用"windows+r"输入cmd'command'即可打开 '命令提示符窗口'的时候,纯小白还不知道macOS的"终端"是什么,macOS好像高冷的女神,我需要不断舔狗式的通过百度问问题才能讨她欢心。
   并且在百度的过程中,终于明白博客园和csdn是多么好的论坛和博客,一搜问题保姆式的教程一大堆,大神们的知识储备令人羡慕。
    #以及通过comd+空格 呼唤聚焦搜索引擎来寻找Mac上的一切

image-20220923162235358

2.MacOS终端terminal的优化使用
#终端打开后的窗口叫shell'壳'命令解析器,相当于Dos下的COMMAND.COM和后来的cmd.exe
可以通过左上角的action bar中的偏好设置来调深色背景
action bar
3.目前还看不懂以及不知道需不需要配置的终端

​ 链接:MacOs系统配置python总结:系统python、Conda、Homebrew切换及PATH配置

​ [https://blog.csdn.net/BernardDong/article/details/121586842]

image-20220923165309646

并不影响使用,目前的使用体验来说似乎还用不到环境变量

§二、今日内容详细

内容大纲:
1.pycharm的下载和使用
2.python语法之注释
3.python语法之变量和常量
4.python基本数据类型

1、pycharm的基本设置优化

1.作为小白,pycharm下载激活后可以使用英文版,帮助我们去了解更多代码和操作的英文原词。
2.新建项目new project后,首先选择'pure python',将创建项目路径选择'location'的目标路径应该尽量简单
3.选择已有的运行环境'previously configured interpreter'选择系统自带的python,然后选择要使用的python版本点击crate运行即可
image-20220923173034534
4.调整pycharm的偏好设置
在action bar中选择preferences进入偏好设置,在常规中选择用滚轮改变字体大小并应用保存
image-20220923184026415 image-20220923184158806
#如何选择python解释器?
#在偏好设置中找到项目,其中可以选择不同版本的解释器
image-20220923184732344
5.输入并运行代码
image-20220923185055873

😢

2、python语法之注释

1.什么是注释
	注释是对一段代码的解释说明#方便别人阅读自己写的代码,更主要是帮助自己解释自己的代码
2.如何编写注释
  1)解释说明文字前加井号 快捷键ctrl+ ?
  	 #注释(仅单行)
 	2)回车左边那个键英文输入法下连续按三下
  	 '''
  	 多行注释
  	 '''
 	3)回车左边那个键英文输入法下+shift连续按三下
  		"""
  		多行注释(与方式二可以 一起使用,帮助代码中也可以到引号的情况下能正常注释)
  		"""

3、PEP8规范

#pycharm中很多时候都有各种颜色的提示以及波浪线,只要不是红线一般都不影响代码运行

PEP8 即为 python代码第八号编写规范,规范了团队间用python语言的规范性
#PEP是Python Enhancement Proposal的缩写,通常翻译为“Python增强提案”
  1.单行注释如果跟在代码之后,那么井号与代码之间需要空两格,内容与井号空一格
  2.如果单行注释自成一行 那么内容与井号空一格
  
#如何学习规范 可以借助于pycharm自动化格式代码反向学习

4、变量与常量constant & variate

变量与常量就是为了让程序具备人记录事物状态的能力
#常量就是不变得量或者事值,变量就是可以发生变化的量或者值
1.什么是变量?
	记录变化(可能会经常改变)的事物状态
 	#年龄 容貌 薪资
2.什么是常量?
	记录固定(可能不经常改变)的事物状态
  #圆周率 重力加速度

5、变量的基本使用

1.变量的语法结构与底层原理

每个变量在使用前都必须赋值,变量赋值以后才会被创建,这样主要是为了避免一些输入失误,同时也避免了默认应该是什么类型的问题

#举例:姓名球球 年龄三岁 品种比熊犬
1.用代码如何记录万事万物?
   name = '球球'
	 age = 19
	 breed = 'bichon frise' 
2.变量使用的语法结构与底层原理
"""
    name = 'qiuqiu'
表示 变量名 赋值符号 数据值
1.一旦看到赋值符号,那么一定从符号的右边看起(从右到左,从上到下)
2.在内存空间中申请一块内存空间存储数据值
3.给数据值绑定一个变量名
4.以后就可以通过变量名访问到数据值
"""
注意事项:
1.一个数据值可以绑定多个变量名
2.赋值符号的右边也可能是变量名,如果是就先找该变量名绑定的数据值
3.一个变量名同一时间只能绑定一个数据值
'''
name = 'qiuqiu'
name1 = name
name2 = name1

x = 10
x = x + 1
print(x)

则x = 11 #运行则应该从右到左 从上到下
'''
image-20220923194939965

2.变量名的命名规范

1.中文是可以用作变量名的,但是不建议使用,容易报错
2.汉语拼音也是可以作为变量名的,但是不建议使用
3.变量名只可以出现字母、数字、下划线
4.数字不能开头
5.变量名尽量做到见名知意
6.变量名不能与关键字冲突

3.变量名的命名风格

1.下划线式 #python推荐使用
 		变量名中单词很多 彼此使用下划线隔开
  	name_from_mysql_db1_userinfo = 'jason'
2.驼峰体式 #JS推荐使用
    #大驼峰
    NameFromMysqlDb1Userinfo = 'jason'
    #小驼峰
    nameFromMysqlDb1Userinfo = 'jason'
	ps:在同一个编程语言中尽量固定使用一种,不要随意切换

6、常量的基本使用

1.在python没有真正意义上的常量,定义了可以随时修改
2.在python中如果想表示出常量,那么可以使用全大写的变量名
#   HOST = '127.0.0.1'
#		除了全大写以外,其他和变量用法一致
#		常量通常放置在代码的最上部,并作为全局使用

7、数据类型

1.什么是数据类型
	在日常生活中数据的表现形式多种多样,在程序中也是如此
  # 数据类型是编程语言必备的属性,只有给数据赋予明确的数据类型,计算机才能对数据进行处理运算。
2.为何学习数据类型
	针对不同的数据采用最佳的数据类型来表示出该数据的价值
3.本次学习数据类型仅仅是了解
	只要看到每个数据类型能够叫出它们的名字以及代码如何编写即可
4.学前必会
	如何查看数据值的数据类型
    	type(数据值)\type(变量名)

0.数据类型的种类

①.Number(数字)
​ ②.String(字符串)
​ ③.List(列表)
​ ④.Tuple(元组)
​ ⑤.Set(集合)
​ ⑥.Dictionary(字典)

1.数据类型之 数字Number:整型int

#整型int 通常被称为是整型或整数,是正或负整数,不带小数点

应用场景:年龄 班级人数 年份
代码实现:
    age = 18
		stu_num = 56
		year = 2022

2.数据类型之 数字Number:浮点型float

#浮点型float 由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

应用场景:身高 体重 薪资
代码实现:
    height = 0.6
 	 	weight = 7.3
  	salary = 0.1
  • python数字类型转换
Python 数字类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

int(x) 将x转换为一个整数。

float(x) 将x转换到一个浮点数。

complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。

complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。

3.数据类型之 字符串string

#字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ 或 " )来创建字符串。创建字符串很简单,只要为变量分配一个值即可
#其实就是文本类型的数据>>>:引号引起来的部分都是字符串
应用场景:姓名 地址 爱好
代码实现:
    name = 'jason'
 	  addr = '芜湖'
  	hobby = '学习'
1.定义字符串有四种方式
	name = 'jason'
 	name1 = "jason"
 	name2 = '''jason'''
 	name3 = """jason"""
2.为什么定义字符串需要有多种方式
	由于我们在字符串中编写文本也可能会使用到引号,为了避免冲突,因此有了多种方式
	info = "Jason老师说:'年轻不是用来挥霍的资本'"
3.如何区分三引号是字符串还是注释
	关注左侧是否含有赋值符号和变量名,如果有则为字符串,没有则为注释
image-20220923202624705 image-20220923202720907 image-20220923202754941

4.数据类型之 列表list

# 创建list列表,使用[ ],多个值之间用逗号隔开,不限制数据类型
# 语法:列表名=[值1,值2]
# 其实就是可以存储多个数据值的类型 并且可以非常方便的取
应用场景:存储多个数据值 并且将来可能需要单独取其中一些
代码实现:
    name_list = ['jason', 'tony', 'kevin', 'oscar', 'jerry']
1.列表的文字描述
	#中括号括起来 内部可以存放多个数据值 数据值与数据值之间逗号隔开 数据值可以是任意数据类型
    l1 = [11, 11.11, 'jason',[11, 22]]
2.索引取值
	起始数字是从0开始 
  l1[索引值]
   
"""
PEP8规范补充
	1.逗号后面与数据值空一格
	2.赋值符号左右都得空一格
"""

5.数据类型之 字典dict Dictionary

# 以“键值对”的形式存放数据,key不能重复
能够非常精确的存储和表达数据值的含义
代码实现:
    info_dict = {
        'username': 'jason', 
        'age': 18, 
        'hobby': 'read', 
	}
1.字典文字描述 [key:value]
	#大括号括起来 内部可以存放多个数据 数据的组织形式是K:V键值对
	#键值对与键值对之间逗号隔开
    	K是对V的描述性性质的信息(解释说明) 一般都是字符串类型
    	V是真正的数据值 可以是任意数据类型
2.按Key取值
	#字典只能按K取值 因为字典是无序的 没有索引的概念
 	 info_dict['username']

§三、今日学习总结

#问题
1.#今日学习效率低下
  反思,听课的吸收效率和质量应该提高,每天早上听课的时间应该保证最高效率复习和接收新的知识点。
  
2.#过于钻牛角尖,急于了解其他新知识
  下午在写笔记的时候,由于对MacOS了解的太少,百度后遇到了很多看不懂的地方。过于钻牛角尖的一种在看一些水平过高的大神'呜呜呜'的博客,然后一头扎进去,然后一直在地效率的学习。应该吧掌握今日的听课笔记内容放在最重要的任务,其他知识目前不必过于深入了解,能掌握的可以了解,无法马上上手的应该马上停下。
  
3.#应该每天都留出相当多的时间来实练操作
  从理论到实际的过程应该是最困难的部分,应该留出最多的时间来实际操练,不能之停留在理论的部分,自己接触python去编写的过程是最重要的
  
4.#有些单词在之前见到的时候和编程中的意思是不同的
  有些单词在之前见到的时候和编程中的意思是不同的,应该建立一个单词本来记录和复习。
  
只能打到50分的一天
posted @ 2022-09-24 17:23  Duosg  阅读(43)  评论(0编辑  收藏  举报