python学习之基础知识

我爱海鲸 2023-04-02 01:21:21 python、python学习

简介python基础、py、解释型语言

还记得我两年前初学python的时候,就畅想过未来了,我买了一本python的书籍,然后在我的小黑屋里不断的去看,不断的去学,但是还是忘记很多。如今我把我之前的那本书送给了我的前女友,然后也没要回来。

现在我在系统的学一遍python的相关基础。

纪念之前的文章:初学python

1、程序

为了完成某种特定功能,以某种程序设计语言编写的有序指令的集合。程序是指挥cpu工作的“工作手册”。

计算机只能执行二进制代码,程序设计语言一般类似英文,想要让计算机理解你写的程序,必须把程序代码“翻译”成计算机能理解的二进制代码,根据翻译形式的不同,可以分为:

编译

将程序代码翻译成计算机能理解的二进制目标代码,会生成特定的可执行代码(在window上是exe文件),

可执行代码是二进制的,无法看到源代码。然后执行可执行代码就可以得到想要的结果 c、c++、oc等

解释

将程序代码一句一句翻译为计算机可以执行的指令,立即执行,不会生成可执行文件 python、php、JavaScript等 

2、python简介(了解)

Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言,第一个公开发行版发行于1991年。

常见的python解释器:

cpython 官方默认的解释器,使用最广泛

jypython 运行于java平台上的解释器

ironpython 运行于.net平台上的解释器

pypy 使用Python编写的解释器,支持JIT技术(即时编译)

python的特点:

a.是一种解释性语言【开发过程中没有了编译的环节】

b.是交互式的语言【可以直接互动执行Python程序】

c.是面向对象的语言

d.是跨平台语言【可以运行在不同的操作系统上】

e.适合初学者

优点

简单、易学;可移植性;可扩展性,可嵌入式;丰富的标准库;支持各种主流数据库;支持GUI编程【图形化编程】

缺点

a.运行速度慢

b.代码不能加密

python应用:

web后端开发

网络爬虫

人工智能

自动化运维

网络编程

国内:豆瓣、百度、阿里、新浪等都在使用python;国外:Google、FaceBook、Twitter

3、 python的开发环境的搭建

win10搭建Python3环境

【Anaconda教程01】怎么安装Anaconda3

pycharm安装教程

4、第一个python程序

4.1 常用的dos命令

cd        #进入指定目录
cd ..      # 退回到上一级目录
cd ..\..  #  向上退回两级目录
cd \      #切换到根目录

盘符名称:     #切换盘符
dir     #列出当前文件夹下的所有的子文件夹和文件
cls     #清空控制台
exit    #退出命令行模式

4.2 交互式

开始->运行->cmd,然后在命令行模式输入python,回车。

  • 优点:所见即所得

  • 缺点:代码无法保存,下一次执行要重新输入;代码长了,无法维护

  • 退出交互模式可以输入exit()

C:\Users\haijin>python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print('hello world')
hello world
>>>

4.3 使用pycharm

新建一个python文件,后缀必须是py,编写代码:

print('人生苦短')
print('我用python')

4.4 代码执行顺序

从上到下,从左至右

4.5注意事项

python文件后缀以py结尾

一行一个语句,不用以分号做结尾

如果一行上有多个语句,则每个语句必须以分号做结尾

文件名尽量不用使用中文,不要包含空格

不要混合使用tab键和空格缩进,缩进用于区分代码块

除了在引号里(单引号、双引号)中,其它地方不要使用中文,要用英文半角

python编码规范遵循PEP8(https://www.python.org/dev/peps/pep-0008/

5、变量(重点)

计算机本质上是一种可以执行计算的机器,这里的计算是一种广义的“计算”,计算机上所有的处理都可以看做是计算。要计算必须的有数据,在程序中如何表示数据呢?

在程序中,我们一般以变量表示数据,所谓变量:

  • 变量是用来保存数据的

  • 在程序中,变量的值是可以改变的,所以叫变量,不能改变的叫常量

5.1 变量定义

变量定义: 变量名 = 值(对象)

#1单个变量定义
name = '杨幂'
age = 20

#2多个变量定义
num1 = num2 =num3 = 10  #定义了三个变量num1,num2,num3,他们的值都是10

#3元组赋值
a, b = 10,20  #10赋值给a,20赋值给b

#绝对不可以这样定义
a = 2, b = 3

5.2 变量命名规范

变量名也可称之为标识符(变量名、函数名、类名、包名等统称为标识符),其命名要符合python的语法要求:

  • 由数字、字母、下划线组成,不能以数字开头

  • 严格区分大小写

  • 不能是python的关键字(保留字)

获取python的保留字
import keyword
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

5.3 变量命名风格

好的变量命名风格应该见名知意,有意义。

见名知意,有自描述性

不建议使用中文命名变量

一般变量可以用小驼峰规则:变量名由多个单词组成,第一个单词首字母小写,其它单词首字母大写

也可以全部变量名都小写,单词之间用下划线分隔

小驼峰命名:
    myBook   yourMoney
 下划线分隔:
    my_book    your_money

5.4 变量输入和输出 

变量输出

print函数 
    作用:将数据显示到屏幕
用法:
    显示字符串
    print('hello')
    
    显示变量
    age = 20
    print(age)
    
    显示多个字符串和变量
    age = 20
    sex = '男'
    print('俺是大傻',age,sex)
    
    格式化显示
    name = '大傻'
    age = 20
    #%s和%d叫占位符,替变量站了位置,显示的时候会用变量的值替换占位符
    #占位符和和后面小括号里的变量一一对应
    print('俺是%s,俺今年%d岁了'%(name,age))
    
    常见的占位符
    %s  字符串占位符
    %d  整数的占位符
    %f  浮点数的占位符

变量输入

input用于输入数据给变量
#input括号中字符串用于提示用户,不用输入
age = input('请输入你的年龄')
print(age)

5.5 变量删除

删除后变量就不存在了,不能够在通过变量名进行存取了
del 变量名

5.6 变量和内存

python中一切都是对象,python中变量保存了对象的引用,变量的好比是一个容器,容器中保存的变量所指对象的引用(地址);变量本身是没有类型的,变量的类型是指其所指对象的类型,比如说变量是一个瓶子,盛了醋就是醋瓶,盛了酱油就是酱油瓶

python中变量的所指对象的地址可以用id函数获取

获取变量的类型可以使用type函数

num1 = 10
print(id(num1))    # 查看变量所指对象的地址
print(type(num1))  # 查看变量的类型

5.7 注意事项

变量必须先定义后使用

=两边要留一个空格

6 、常量

程序在运行的过程中,值永远不会发生改变的量称之为常量

python没有专门的常量类型,一般约定俗成使用大写表示常量

# 圆周率
PI = 3.1415926

# 我的生日
MY_BIRTHDAY = '2008/2/29'

7、注释

python解释器不解释、不执行注释

注释的优点:

  • 注释可以提高代码的可读性、可维护性。

  • 保留代码

  • 方便调试

注释的书写格式

单行注释,以#开始,一直到本行结束都是注释

#这是单行注释

age = 20  #这也是单行注释

多行注释

#1.使用三个单引号
'''
中间的任何内容都是注释,
可以有多行
但中间不能再有三个单引号

'''

#2.使用三个双引号
"""
中间都是注释内容
但不能出现三个双引号
"""

注意

    • 单行注释一般出现在注释代码的上面和右面

    • 良好的注释是一个优秀程序员的基本素质

    • 不要每行代码都加注释,只注释比较难懂的代码,或对变量说明

8、数据类型

不同类型的变量可以进行的运算是不同的,所以必须理解变量的类型,python中数据类型可以分为:

  • 内置类型

    • 数值类型:整型(int),浮点型(float),复数 3+5j(complex)

    • str:字符串

    • bool:布尔值【True,False】

    • None:空值,表示变量没有确定的值

    • list:列表

    • tuple:元组

    • dict:字典

    • set:集合

  • 自定义类型

    • class :类

8.1 基础类型 

数值型可以分为:

整型(int): python3中只有int一种,可以表示整数,例如:10,-5,10000

浮点型(float): 表示带小数点的实数,有两种表示法:

   小数表示: 1.9 .23

   科学计数法: 用e来表示10的指数,1e2就代表了100,注意e前面必须有数值,e后面必须为整数

复数(complex):表示数学上的无理数,形如:a+bj

布尔型(bool):表示事务的两种状态,男女、阴晴、亮暗等,它只有两个值:True,False

None:表示空对象,一般用于判断,不同于0和空字符

字符串(str):在python中,可以使用字符串表示文本

字符串的表示

# 用单引号表示: 'hello'
# 用双引号表示:"我用python"
# 用3个单引号表示:可以表示多行文本,例如:
	'''伟大
	   的
	   祖国
	 '''
# 用3个双引号表示:可以表示多行文本,例如:
	"""生死看淡,
	不服就干"""

转义字符:有些特殊字符无法从键盘输入,可以使用转移字符表示,另外,无论是单引号、双引号还是双引号字符串,在单引号字符串中如何表示一个单引号呢,这也可以使用转义字符表示。常见的转义字符

转义字符 描述 转义字符 描述
\' 表示一个普通字符单引号 \r 回车
\" 表示一个普通字符双引号 \n 换行
\''' 一个普通的三单引号 \\ 一个普通的字符\
\""" 一个普通的三双引号 \a 响铃
\t tab键 \b 回删一个字符

字符串编码:计算机只能识别二进制,那么字符串如何存储到计算机里呢

计算机不能直接存储字符串,但我们可以将字符编码,例如用65表示大写字符A,66表示大写字符B....等这种表示方式就是美国类的ASCII码,只能表示127个字符,但对于美国人来说已经足够了。一但能用整数表示字符,我们可以很方便的把整数用二进制表示,那么字符串也就和容易存储到计算机了。
但还有很多其他国家的语言是不能用ASCII表示的,所有ISO组织就推出了unicode码,用来表示任何一种语言的字符,unicode码也称之为万国码,通用码,可以表示任何一种语言的任何一个字符。unicdoe码有多中表示方式,例如:utf-8、utf-16、utf-32等。一般使用较多的是utf-8,utf-8是一种变长的编码,表示一个字符可能用一个字节,也可能是三个字节
中文常用编码一般用GBK编码,用2个字节表示一个汉字

相关练习代码:

# 变量的命名规则
a=10
b=20
c=18
print(a,b,c)
# 不规范
# 原则: 见名知义
# 区分大小写
A=30

print(a,A)

name01='张三'
print(name01)

name_01='李四'
print(name_01)

_name01='王五'
print(_name01)


# 99n ='abc'   invalid syntax
# print(99n)

# name+01 = 'abc'  错误的命名

#  ‘’ “”  中文引号  
goods_num = 10
goods_total = 289.9

# ,中文逗号

print('商品数量是:',goods_num)
print('商品的总额是:',goods_total)
# 知识点: 变量和命名规则
money = 99.9
count = 5
person = '小明'

print(money)
print(count)
print(person)

# 618 
# type(变量名)  返回该变量的类型
money=9.9
print(money,type(money))

money='9.9元'
print(money,type(money))

money =9
print(money,type(money))

money=9.9
print(money,type(money))

相关单词:

单词:
Help 帮助
Function 函数
Built-in(builtins) 内置
Module 模块
Value 值
Stream 流  
Default 默认的
Format 格式化
digit  数字  %d
Required 必须 需要
Raise 抛出,扔出
Operator 运算符
Identity  特点 特征

你好:我的2025