【Python】Python语言基础(上)

news2024/11/24 7:05:53


第一章 前言

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.coloradmin.cn/o/1091984.html

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

相关文章

利用 Amazon CodeWhisperer 激发孩子的编程兴趣

我是一个程序员,也是一个父亲。工作之余我会经常和儿子聊他们小学信息技术课学习的 Scratch 和 Kitten 这两款图形化的少儿编程工具。 我儿子有一次指着书房里显示器上显示的 Visual Studio Code 问我,“为什么我们上课用的开发界面,和爸爸你…

巴以冲突中暴露的摄像头正对安全构成威胁

巴以冲突爆发后,许多配置不当的安全摄像头正暴露给黑客活动分子,使其周遭人员面临巨大安全风险。 Cyber​​news 研究人员发现,在以色列至少有165 个暴露的联网 RTSP 摄像头,在巴勒斯坦有 29 个暴露的 RTSP 摄像头。在巴勒斯坦&am…

CCPlotR | 轻松拿捏单细胞分析之细胞交互!~

1写在前面 周末了各位,昨天去看了奥本海默,不得不说,大神就是大神。😘 比起我们的电影,似乎诺兰更好地还原了奥本海默的真实。🧐 言归正传,今天分享的是CCPlotR包,用于基于scRNAseq数…

SwiftUI Swift CoreData 计算某实体某属性总和

有一个名为 Item 的实体,它有一个名为 amount 的 Double 属性,向你的 View 添加一个计算属性: Code: struct ContentView: View {Environment(\.managedObjectContext) private var viewContextFetchRequest(sortDescriptors: [NSSortDescri…

Codeforces Round 903 (Div. 3) C(矩形旋转之后对应的坐标)

题目链接:Codeforces Round 903 (Div. 3) C 题目: 思想: 旋转之后对应的坐标: (i,j)(n1-j,i)(n1-i,n1-j)(j…

CSS的布局 Day03

一、显示模式: 网页中HTML的标签多种多样,具有不同的特征。而我们学习盒子模型、使用定位和弹性布局把内容分块,利用CSS布局使内容脱离文本流,使用定位或弹性布局让每块内容摆放在想摆放的位置,让网站页面布局更合理、…

VCAP-DCV VMware vSphere: 运维、扩展和安全防护 [V8.0]

VMware官方授权合作机构,全国招生! VCP-DCV VMware vSphere:安装、配置和管理[V8.x]-CSDN博客本课程重点讲授如何安装、配置和理 VMware vSphere 8.0(包括 VMware ESXi™ 8.0 和 VMware vCenter Server™ 8.0)。使用 …

代码随想录算法训练营第二十天丨 二叉树part07

530.二叉搜索树的最小绝对差 思路 题目中要求在二叉搜索树上任意两节点的差的绝对值的最小值。 注意是二叉搜索树,二叉搜索树是有序的。 遇到在二叉搜索树上求什么最值啊,差值之类的,就把它想成在一个有序数组上求最值,求差值…

出游热潮再起,IPIDEA代理IP帮你应对旅游数据采集的挑战

随着互联网的快速发展,旅游行业也随之迅速发展。在线旅游预订已经成为人们出行前的必要步骤,然而,旅游信息的采集却是一项具有挑战性的任务。为了从酒店和航空公司网站、在线旅行社和其他类似来源收集数据,企业需要克服许多障碍。…

Spring源码解析——@Transactional注解的声明式事物介绍

正文 面的几个章节已经分析了spring基于AspectJ的源码,那么接下来我们分析一下Aop的另一个重要功能,事物管理。最全面的Java面试网站 事务的介绍 1.数据库事物特性 原子性 多个数据库操作是不可分割的,只有所有的操作都执行成功&#xff…

腾讯云我的世界mc服务器配置怎么选择?

使用腾讯云服务器开Minecraft我的世界服务器配置怎么选择?10人以内玩2核4G就够用了,开我的世界服务器选择轻量应用服务器就够了,腾讯云轻量CPU采用至强白金处理器,大型整合包一般1.12版本的,轻量2核4G配置都差不多的&a…

基于供需优化的BP神经网络(分类应用) - 附代码

基于供需优化的BP神经网络(分类应用) - 附代码 文章目录 基于供需优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.供需优化BP神经网络3.1 BP神经网络参数设置3.2 供需算法应用 4.测试结果:5.M…

css样式导入模板

直入主题 添加<link>标签到标题下面&#xff0c;输入rel"stylesheet",type"text/css",在href属性里写入路径 <title>标题</title> <link rel"stylesheet" type"text/css" href"xxx.css" /> 像这样就…

接口测试(含文档)

1、简介 测试系统组件之间的接口。 2、分类 2.1 外部接口 被测系统和外部系统之间的接口。&#xff08;例如电商与支付宝之间的支付接口&#xff0c;只需要测试正例即可&#xff09; 2.2 内部接口 2.2.1 提供给内部系统使用的内部接口。&#xff08;只需要测试正例即可&a…

Android Handler/Looper视角看UI线程的原理

概述 Handler/Looper机制是android系统非重要且基础的机制&#xff0c;即使在rtos或者linux操作系统上开发应用框架时&#xff0c;也经常借鉴这个机制。通过该机制机制可以让一个线程循环处理事件&#xff0c;事件处理逻辑即在Handler的handleMessge种。本文建议android8.1源码…

Step 1 搭建一个简单的渲染框架

Step 1 搭建一个简单的渲染框架 万事开头难。从萌生到自己到处看源码手抄一个mini engine出来的想法&#xff0c;到真正敲键盘去抄&#xff0c;转眼过去了很久的时间。这次大概的确是抱着认真的想法&#xff0c;打开VS从零开始抄代码。不知道能坚持多久呢。。。 本次的主题是搭…

一文让你玩转Linux多进程开发

Linux多进程开发 主要介绍多进程开发时的要点 进程状态转换 进程反应了进程执行的变化。 进程的状态分为三种 ,运行态,阻塞态,就绪态 在五态模型中分为以下几种,新建态&#xff0c;就绪态&#xff0c;运行态&#xff0c;阻塞态,终止态。 运行态&#xff1a;进程占用处理器正在运…

CSS结构选择器的使用

结构选择器 style>ul li:first-child {//选出第一个孩子进行变色background-color: blue;}</style><ul><li>我是第1个孩子</li><li>我是第2个孩子</li><li>我是第3个孩子</li><li>我是第4个孩子</li><li>…

基于linux的基础线程知识大总结

文章目录 1.线程的基础概念认知1.1什么是线程1.2线程的优缺点1.3一些页表知识的额外补充1.4进程和线程的对比 2.线程的基本控制2.1POSIX线程库2.2创建一个新的线程2.3有关线程id的解释和线程栈区的地址空间布局2.4线程终止2.5线程等待2.6线程分离 3.线程间互斥3.1基本概念3.2互…

多城镇信息发布付费置顶公众号开源版开发

多城镇信息发布付费置顶公众号开源版开发 以下是多城镇信息发布付费置顶公众号的功能列表&#xff1a; 信息发布&#xff1a;用户可以在公众号上发布各类信息&#xff0c;如房屋租售、二手物品交易、招聘信息等。 信息置顶&#xff1a;用户可以选择付费将自己的信息置顶在公众…