【Python】Python语言基础(上)


第一章 前言

1. Python简介

Python语言并不是新的语言,它早于HTTP 1.0协议5年,早于Java语言 4年。
​
Python是由荷兰人Guido van Rossum(吉多·范罗苏姆)于1989年圣诞节期间在阿姆斯特丹休假时为了打发无聊的假期而编写的一个脚本解释程序。
1991年,Python发行了第一个公开版本。
​
Python语言被吉多·范罗苏姆作为是ABC语言的一种继承,但坚决摒弃ABC语言的封闭性,走开源路线。在Python语言问世的时候,他在互联网上公开了源代码,让世界上更多喜欢Python的程序员,对Python进行不断的功能完善。这也就为后来Python的蓬勃发展奠定了基础。
​
现在Python是由一个核心开发团队在维护,吉多仍然占据着至关重要的作用,指导其进展。
在全世界程序员不断的改进和完善下,Python现今已经成为最受欢迎的程序设计语言之一。
​
自从2004年以后,Python的使用率呈线性增长,2019年6月TIOBE调查显示Python语言在开发语言中排名第3,仅次于Java和C。
2019年,IEEE最热门48种编程语言榜,Python 强势霸榜第一名!排名第二的 C++ 得分是98.4。Java 排名降至第四,得分为97.5。排名第三的是 C,得分为98.2。

2. Python的前世今身

在Python是由一个核心开发团队在维护,吉多仍然占据着至关重要的作用,指导其进展。
在全世界程序员不断的改进和完善下,Python现今已经成为最受欢迎的程序设计语言之一。
​
自从2004年以后,Python的使用率呈线性增长,2019年6月TIOBE调查显示Python语言在开发语言中排名第3,仅次于Java和C。
2019年,IEEE最热门48种编程语言榜,Python 强势霸榜第一名!排名第二的 C++ 得分是 98.4。Java 排名降至第四,得分为 97.5。排名第三的是 C,得分为 98.2。

3. Python的特性

1.Python简单易学
2.Python是面向对象的高层语言
3.Python语言是免费且开源的
4.Python是解释性语言
5.Python程序编写需使用规范的代码风格
6.Python是可扩展和可嵌入的
7.Python是可移植的
8.Python运行速度快
9.Python提供了丰富的库

4. Python的版本

2008年10月Python 3.0版本发布,该版本在Python 2的上进行了很大的改变,使得两者互不兼容。
在2020年1月1日起 Python不再对Python2版本进行支持。
​
由于Python 3相较于Python 2还有大量的改进和提升的地方,这就使得Python 2有了些许“鸡肋”之感。
因此,我们跟随技术的发展和前进的潮流,选择Python 3作为我们学习的对象。

第二章 Python环境安装

https://www.python.org/downloads/
https://www.jetbrains.com/pycharm/

第三章 运行Python的方式

交互模式运行

按下windows+r键 
输入cmd 回车
输入python>>> print("Hello World")
Hello World

命令行运行

C:\Users\iknow>cd Desktop
C:\Users\iknow\Desktop>python 1.py
Hello,world!

IDE运行(Pycharm)

下载Pycharm

第四章 算术运算符

运算符描述示例
+1 + 2 = 3
-3 – 2 = 1
*2 * 3 = 6
/6 / 3 = 2.0
//取整9 / 2 = 4
%取余9 % 2 = 1
**2 ** 3 = 8
=赋值A = 2

算数运算符的优先级

先乘除后加减;
优先级顺序:*** / % //+ - 
使用()可以调整算术运算的优先级,有括号先算括号内的。

算术运算符的注意事项

1.除法运算(/)永远返回的都是浮点数类型
​
2.当在交互模式下运行时,上一次运行结果的结果会赋值给变量_
下次需要使用时,使用_即可。

第五章 输出

print()函数可用于输出、打印到屏幕上
语法:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
print("参数")
print()是函数,参数就是需要输出的内容,这些内容可以是数值、字符串、布尔、列表或字典等数据类型。
​
如果要输出多个参数,参数与参数之间用逗号隔开,如:
print("China", countries)
双引号(或者使用单引号)内的内容称为字符串常量,照原样输出内容;没有引号的countries是变量,会输出代表内容;print()函数执行完成后默认换行,如不需要换行,则在输出内容之后加上end = ‘’,如:
print(i,end='')
所有不带""的字符都是变量
例:
print(1,2,3,4,5)
----------------------------
1 2 3 4 5
​
sep表示以...来分割
print(1,2,3,4,5,sep="hahahaha")
------------------------------
1hahahaha2hahahaha3hahahaha4hahahaha5
​
end表示以...结束
print(1,2,3,4,5,sep="hahahaha",end="结束啦!")
-------------------------------
1hahahaha2hahahaha3hahahaha4hahahaha5结束啦!
输出Lucy:"我今年19岁"
第一种方式:单引号双引号交替使用
print("Lucy:'我今年19岁'")
--------------------------
Lucy:'我今年19岁'
​
第二种方式:使用转义字符
print("Lucy:\"我今年19岁\"") # \ 后面的"失去作用
Lucy:"我今年19岁"

第六章 Python之禅

The Zen of Python, by Tim Peters
​
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
​
中文:
《Python 之禅》作者:Tim Peters
​
美丽总比丑陋好。
显式的比隐式的好。
简单总比复杂好。
复杂总比复杂好。
扁平比嵌套更好。
稀疏比密集好。
可读性很重要。
特殊情况还不足以违反规则。
尽管实用性胜过纯粹性。
错误永远不应该悄无声息地过去。
除非明确沉默。
面对歧义,拒绝猜测的诱惑。
应该有一种——最好只有一种——明显的方法来做到这一点。
尽管这种方式一开始可能并不明显,除非您是荷兰人。
现在总比没有好。
尽管从来没有比“现在”更好。
如果实现很难解释,那就是个坏主意。
如果实现很容易解释,这可能是一个好主意。
命名空间是一个非常棒的想法——让我们多做一些这样的事情吧!

第七章 输入

input()函数用于数据的接收
object = input('提示信息')
​
input('请输入你的姓名:')
---------------------------
请输入你的姓名:iknow

第八章 变量

1.可以将任何值赋值给一个变量
2.变量名只能包含数字、字母、下划线只能以字母或下划线开头
3.变量名不可以和Python中保留的关键词冲突
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']
4.变量名称区分大小写
5.在定义变量时候,尽量不可能使用小写的'l'或者是小写的'o',因为容易和数字1、数字0起混淆
6.变量名应具有描述性。

变量的简单使用

message = "I love the world"
print(message)
message = 'I hate the world'
print(message)
----------------------------
I love the world
I hate the world

变量的小演练

请通过输入的方式获取一个用户的姓名,年龄和性别。并最终在屏幕上输出这些内容,如:张三25岁男性
​
Name = input("Please input your name:")
Age = input("Please input your age:")
Sex = input("Male? Female?:")
print(Name + " " + Age + " " + Sex)
----------------------------
Please input your name:XiaoFang
Please input your age:22
Male? Female?:Female
XiaoFang 22 Female

第九章 注释

在Python代码中加入必要的注释,使其具有较好的可读性。
注释分为两种,单行注释和多行注释。单行注释:使用“#”,其后(右边)的内容将不会被执行
​多行注释:使用两组,每组三个连续的双引号(或者单引号),两组引号之间为多行注释的内容
​​​​​​​# 单行注释的内容"""
多行注释的内容
"""

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/105480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

车载电子电器架构 —— 国产基础软件现在与未来

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不…

bash: /usr/bin/cmake: No such file or directory

问题描述 当在linux 下 源码安装 cmake ,验证安装 cmake --version, 出现以下错误: bash: /usr/bin/cmake: No such file or directory 解决方法: 将编译生成的 cmake 复制到 /usr/bin 文件夹下 cp ./cmake-3.x/bin/cmake …

idea自动封装方法

例如 package com.utils;import java.lang.reflect.Field; import java.sql.*; import java.util.ArrayList; import java.util.List; import java.util.ResourceBundle;/*** author hrui* date 2023/10/13 13:49*/ public class DBUtils {private static ResourceBundle bund…

华为云云耀云服务器L实例评测|华为云耀云服务器L实例docker部署及应用(七)

八、华为云耀云服务器L实例docker、docker-compose安装及部署MySQL、Redis应用: 随着云原生、容器化、微服务、K8S等技术的发展,容器 docker 也逐渐在企业团队实践中大量的使用。它可以提供了一套标准化的解决方案,极大地提升了部署、发布、运…

2023年中国视频流媒体行业发展历程及趋势分析:未来市场规模趋于平稳[图]

随着移动通信的发展和视频内容产业供给端的繁荣,流媒体视频平台已经成为互联网用户上网时长最长的应用之一。在线视频行业经历了十几年的规范发展阶段,在各大头部平台百花齐放的现状下,难以实现一家独大,但部分平台有领先优势&…

acwing算法基础之基础算法--整数离散化算法

目录 1 知识点2 模板 1 知识点 整个范围很大,但存在的数据点很少。比如从 − 1 0 9 -10^9 −109到 1 0 9 10^9 109,但总共只有 1 0 6 10^6 106个数。 可以采用离散化的思想来做,即将离散的大数值映射成连续的小数值(一般是 1 , …

软考高级架构师下篇-18大数据架构理论设计与实践

目录 1. 引言2. 传统数据处理系统的问题1.传统数据库的数据过载问题2.大数据的特点3.大数据利用过程4.大数据处理系统架构分析3.典型的大数据架构1. Lambda架构2.Kappa架构3. Lambda架构与Kappa架构的对比4.大数据架构的实践1.大规模视频网络2.广告平台3.公司智能决策大数据系统…

整理redis写入string类型的缓存的方法

第一种存储方式:JSON方法 可以使用Redis的序列化方法将数组转换为字符串,然后将其写入Redis中的String类型缓存。常见的序列化方法有JSON和PHP自带的序列化函数serialize和unserialize。 以下是一个示例代码,将一个数组写入Redis中&#xf…

数字孪生技术:新零售的未来之路

随着科技的不断进步,新零售产业正经历着巨大的变革。数字孪生作为一种新兴技术正在加速这一变革的进程。它不仅为新零售企业带来了更高效的运营方式,还为消费者提供了更个性化、便捷的购物体验。那么,数字孪生技术究竟如何在新零售产业中发挥…

HDLbits:Fsm onehot

这道题理解有误,以为s010b0000000001,s010b0000000010,写成了如下的代码(有误): module top_module(input in,input [9:0] state,output [9:0] next_state,output out1,output out2);parameter s010b00000…

分享关于职场心态

1.解决问题而不是解释原因 2.秉承工匠思维而不是激情思维 什么是工匠思维? 工匠思维(The craftsman mindset)对待职业生涯的一种方式;是以产出为中心的职业观,关注自己给世界(工作)带来的价值…

免密码方式获取Hive元数据

前言 开发中可能用到hive的元数据信息 ,如获取hive表列表、hive表字段、hive表数据量大小、hive表文件大小等信息,要想获取hive元数据信息即需要hive元数据库的账号及密码,此次提供的是一种不需要hive元数据库密码及可获取元数据信息的方式 …

观察者模式、订阅者发布者模式、vtk中的观察者模式

文章目录 什么是观察者模式vtk是如何实现的观察者模式.AddObserver什么时候使用观察者模式?什么使用订阅发布者模式?观察者模式的实现订阅发布者的实现总结知识补充: 什么是观察者模式 用于在对象之间建立一对多的依赖关系,当一个对象的状态发生变化时…

用一个结构去分割二维空间

( A, B )---5*30*2---( 1, 0 )( 0, 1 ) 让网络的输入只有5个节点,AB训练集各由5张二值化的图片组成,让A 中有5个点,B全是0,排列组合,统计迭代次数并排序。 其中5-x有3组数据 4-x 差值结构 迭代次数 5-x 差值结构 …

JAVA之多线程

文章目录 进程与线程多线程的生命周期多线程的实现方式 进程与线程 进程是指运行中的应用程序,每一个进程都有自己独立的内存空间;线程是指进程中的一个执行流程,有时也称为执行情景;一个进程可以由多个线程组成,即在…

springboot中如何加载测试专用属性

测试 加载测试专用属性 加载测试专用配置 Web环境模拟测试 数据层测试回滚 测试用例数据设定 1.在启动测试环境时可以通过properties参数设置测试环境专用的属性 SpringBootTest(properties {"test.proptestValue1"}) public class PropertiesAndArgsTest {Value(…

Web应用-Thinkphp框架-开发指南

Thinkphp框架 二级导航分类,模板继承,内置标签Public 修改MVC模块化 ——访问机制传参加载模版模版引入 分离Runtime 缓存文件管理员添加数据验证及验证场景 控制器 validate 在sql执行(敏感操作)之前验证数据模板 分页数据表连接…

[MoeCTF 2023] web题解

文章目录 webhttpcookie彼岸的flagmoe图床大海捞针夺命十三枪 web http 连接到本地后,题目给了我们任务 第一个是要求我们GET传参UwUu第二个是要求我们POST传参Luvu第三个是要求我们cookie值为admin第四个是要求我们来自127.0.0.1第五个是要求我们用MoeBrowser浏…

ajax实现原理

网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面。这使得程序能够更快地回应用户的操作 Ajax的实现原理 创建Ajax对象 传入请求方式和请求地址 发送请求 获取服务器与客户端的响应数据 xhr.responseText // 1…

C语言-程序环境和预处理(1)编译、连接介绍以及预处理函数,预处理符号详解及使用说明。

前言 本篇文章讲述了程序的翻译环境和执行环境,编译、连接,预定义符号,#define,#符号和##符号的相关知识。 文章目录 前言1.程序的翻译环境和执行环境2.编译链接2.1 翻译环境2.2 运行环境 3.预处理详解(各预处理符号使…