Python:入门与基本语法

news2024/12/27 13:07:58

目录

一、Python环境

官方下载

 Python开发工具

 插件安装

二、基本数据类型

 动态语言的体现

 静态语言的体现

弱语言的体现

强语言的体现

 三、基本数据类型

java八大基本数据类型

 Python四大基本数据类型

 案例

基本数据类型

 test01

 源码

引用数据类型

列表

test02

 源码

集合Set

test03源码

字典

test04源码

元组

test05源码

操作符

test06源码

一、Python环境

官方下载

Python环境安装包下载

https://www.python.org/
https://www.python.org/downloads/windows/

 Python开发工具

PyCharm下载

https://www.jetbrains.com.cn/en-us/
https://www.jetbrains.com.cn/en-us/pycharm/

 压缩包解压之后 安装到本地

 双击.exe打开

 插件安装

#软件汉化
Chinese (Simplified) Language Pack/中文语音包
#英文翻译
Translation 

 下载这个插件 安装成功之后重启开发工具 就是汉化版的啦

二、基本数据类型

Python是一门动态的(dynamic)且强类型(strong)语言

 动态语言的体现

#JavaScript    以下代码不会报错,数据类型可以变化
let a = 1;
a = "abc";

并不会报错

 静态语言的体现

类型一旦被定义 就已经定死了

#java    以下代码会报错,数据类型不能变化
int a = 1;
a = "abc";

弱语言的体现

#JavaScript 以下代码不会报错,数据类型可以进行计算
<script type="text/javascript">
    function abc(){
        let a = "1" * 3;
        alert(a);
    }
</script>

<body>
    <button type="button" οnclick="abc()">测试</button>
</body>

强语言的体现

#python  计算字符串叠加效果
print("1")
print("1"*2)
print(1*2)
print('1'*3)

 三、基本数据类型

java八大基本数据类型

#数字类型
byte/short/int/long
#浮点型
float/double
#文本
char
#布尔类型
boolean

 Python四大基本数据类型

整数 int int
浮点型 double float
字符串 string str
布尔 boolean bool

 案例

基本数据类型

新建一个文件

 test01

 

 测试一下  能用

 

 

 

 源码

# print("hello")
# python的注释 CTRL+/
"""
多行注释
整数 int int
浮点型 double float
字符串 string string
布尔 boolean bool
"""

# 浮点型
import decimal

# f1 = 0.6
# f2 = 0.2
# print(f1 -f2)
# d1 = decimal.Decimal(0.6)
# d2 = decimal.Decimal(0.2)
# print(d1-d2)
# d1 = decimal.Decimal('0.6')
# d2 = decimal.Decimal('0.2')
# print(d1-d2)

# 整数 快捷键:ctrl+alt+l
# a1 = 1000  # 十进制
# a2 = 0x1000  # 16进制
# a3 = 0o1000  # 8进制
# a4 = 0b1000  # 2进制
# print(a1)
# print(a2)
# print(a3)
# print(a4)

# 字符串 string string
# name = "hello world"
# print(name)
# name = "hello 'world'"
# print(name)
# name = "hello \"wor\"ld"
# print(name)
# name = "hello \t world"
# print(name)
# name = "hello \n world"
# print(name)
# name = 'hello world'
# print(name)

# 布尔 boolean bool
b1 = True
b2 = False
print(b1,b2)
# python中为false的情况
#   0 , '' , [], {}, () , None , False
print(1 and 2 and 3 and 4)
print(1 and 2 and 0 and 4)
print(1 and 2 and '' and 4)
print(1 and 2 and [] and 4)
print(1 and 2 and None and 4)
print(1 and 2 and False and 4)
print(1 and 2 and {} and 4)
print(1 and 2 and () and 4)
print(1 and 2 and 'axs' and 4)

上面的图是运行结果

引用数据类型

列表

test02

 

 

 

 

 源码

# 列表 ArrayList -> list  type:获取类型
l1 = list()
l1 = []
l1 = [1, 3, 4, 2, 5]
# print(type(l1))

# 添加内容  stack栈: push放   pop拿
# pop 随机拿元素(删除元素)
# print(l1.pop())
# print(l1)

# extend 追加
# l1.extend([9,8])
# print(l1)

# copy 复制新的引用
# l2 = l1.copy()
# l3 = l2
# print(l2)

# append 追加
# l2.append({7,6})
# print(l1)
# print(l2)
# print(l3)

# l1.sort() 排序
# l1.sort(reverse=True) 倒序
# l1.sort()
# print(l1)
# l1.sort(reverse=True)
# print(l1)

# remove 删除某个元素
# l1.remove(1)
# print(l1)

# insert 插入
# l1.insert(1,33)
# print(l1)

# 反转数组中的元素
# l1.reverse()
# print(l1)
# l1.reverse()
# print(l1)

# 查找字符出现的次数
# l1.append(4)
# print(l1.count(4))
# print(len(l1))

# clear 清空
# l1.clear()
# print(l1)

# print('========================================')
# 切片
# l1 = [1, 2, 3, 4, 5, 6, 7]
# 拿到 【2, 3, 4】
# print(l1[1:4])
# 删掉【2, 3, 4】
# l1[1:4] = []  # 1,5,6,7
# print(l1)
# 添加 【2, 3, 4】
# l1[1:1] = [2, 3, 4]
# print(l1)

# l1[开始:结束:步长]
print(l1[-1::-1])
print(l1[::2])

集合Set

test03源码

# 集合 Set -> set
# 元素唯一且无序
# 如果是新建空的set集合 需要使用set()
s1 = {}
print(type(s1))
s1 = set()  # s1={}方法建出来的是一个dict对象
print(type(s1))
s1 = {1, 2, 3, 4, 5, 6, 1, 1, 1}
print(type(s1))

'''增删改查'''
# s1.clear()
# s1.copy()
# s1.remove()
# s1.pop()
# s1.add()

s1 = {1, 2, 3}
s2 = {3, 4, 5}

# s1.difference(s2) 取差集
s3 = s1.difference(s2)
print("==================取差集======================")
print(s1)
print(s2)
print(s3)

print("===================删除元素=====================")
# s1.discard()  删除元素
print(s1.discard(4))  # 删除不报错
print(s1)
# print(s1.remove(4)) #删除报错
print(s1)

print("==================取交集======================")
# s1.intersection() 取交集
s3 = s1.intersection(s2)
print(s1)
print(s2)
print(s3)


print('=================')
# 有黑名单
# 只要那些用户不在黑名单中
m1 = {1, 2, 3}
m2 = {3, 4, 5}

# 并集
print('========并集=========')
print(m1 | m2)
# 交集
print('========交集=========')
print(m1 & m2)
# 差集
print('========差集=========')
print(m1 - m2)
# 平均差集
print('========平均差集=========')
print(m1 ^ m2)

print('=================')
# 抽奖
users = {'zs', 'ls', 'ww', 'zl', 'tq'}
print(users.pop())
# 黑名单去重
black = {'ls', 'zl'}
print(users - black)

print('=================')
# 再xx里面是否存在
print(1 in m2)
print(1 not in m2)

 

字典

test04源码

person = {
    "name": "root",
    "pwd": "123"
}
# 拿值
print(person['name'])
# 改值
person['pwd'] = 123
# 给一个新的值
person['age'] = 456
print(person)
person[1] = 'aa'
print(person)
person[(1, 2)] = '黑'
# 定义一个空的dict
dog = {}
print(type(dog))

元组

test05源码

# 元组 array -> tuple
# 性质和list一致,不能做增删改
# list:[]   set:{}  元组:()  字典dict:{}
t1 = (1, 2, 3)
print(t1)
t2 = 1, 2, 3, 4, 5
print(t2)
# 写一个只具备一个元素的元组
t3 = 1,
print(type(t3))  # <class 'tuple'>
t3 = 1
print(type(t3))  # <class 'int'>
print(t3)

操作符

test06源码

# 操作运算符
# + - * /
print("========================+ - * /=======================")
print(5 + 2)
print(5 - 2)
# print("a"+2)  # 报错,强类型
print("a" * 2)
print(5 * 2)
print(5 / 3)
print(5 // 3)
print(5 % 3)
print(5 ** 3)

l1 = [1, 2, 3]
l2 = [3, 4, 5]
print(l1 + l2)
print(l1 * 2)

print('hello' * 20)


print("======================================")
name = 'sa'
age = 18
# print('学生姓名为:' + name + ',年龄为:'+age)
print(f'学生姓名为:{name},年龄为:{age}')

s = input('请输入')
if s == 'xx':
    pass
print(s)

 

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

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

相关文章

你不知道的SQL语言数据库原理

1、SQL的概述 SQL全称&#xff1a; Structured Query Language&#xff0c;是结构化查询语言&#xff0c;用于访问和处理数据库的标准的计算机语言。 SQL语言1974年由Boyce和Chamberlin提出&#xff0c;并首先在IBM公司研制的关系数据库系统SystemR上实现。 美国国家标准局(AN…

【配电网重构】负荷平衡的配电网重构【含Matlab源码 2180期】

⛄一、 负荷平衡的配电网重构 1 引言 配电网网络重构是指在正常或非正常运行条件下通过改变开关的开关状态来改变网络的拓扑结构。配电网故障恢复供电是指配电网发生故障后,在故障已被定位和隔离的基础上,研究如何恢复对无故障停电区域供电的问题,本文简称为故障恢复。故障恢复…

Spring Cloud Alibaba 整合 Nacos

写在最前 项目 GitHub 地址 mingyue-springcloud-learning 【mingyue-springcloud-user、mingyue-springcloud-member】 阅读推荐 Spring Cloud 入门必读Spring Cloud Alibaba 入门必读 版本声明 spring-boot: 2.7.5 spring-cloud: 2021.0.5 spring-cloud-alibaba: 2021.0.4…

论文阅读 Fast Reinforcement Learning Via Slow Reinforcement Learning

论文阅读 RL^2 Fast Reinforcement Learning Via Slow Reinforcement Learning1. 摘要2.introduction3. 实现4.小结1. 摘要 强化学习可以对于单个任务有较好的效果&#xff0c;但需要大量的尝试。动物往往可以通过少量的尝试就获得很好的效果。原因在于动物可以更好地使用先验…

学习笔记——Java Stream 源码学习

思路 先上一段代码 List<User> userList new ArrayList<>();for (int i 0; i < 10; i) {userList.add(new User(i, "wtq", "1234"));}userList.stream().filter(user -> user.getUserId() > 3).filter(user -> user.getUserId(…

【JVM】字节码技术:图解字节码形式下的 方法执行流程

一、源文件 package cn.itcast.jvm.t3.bytecode;/** * 演示 字节码指令 和 操作数栈、常量池的关系 */ public class Demo3_1 {public static void main(String[] args) {int a 10;int b Short.MAX_VALUE 1;int c a b;System.out.println(c);} }二、反编译的字节码文件 …

《Go语言精进之路,从新手到高手的编程思想、方法和技巧1》读书笔记和分享

Go语言精进之路&#xff0c;从新手到高手的编程思想、方法和技巧读书分享1 本书定位2 本书内容总览3 选择本书的原因4 小收获分享第7-12条 真的不知道咋命名第13-19条 能用——怎么用更好5 个人总结第一部分 熟知 Go 语言的一切第 1 条 了解 Go 语言的诞生与演进第 2 条 选择适…

甘露糖-聚乙二醇-CY5.5 /Cy5.5-PEG-mannose

甘露糖-聚乙二醇-CY5.5 /Cy5.5-PEG-mannose 中文名称&#xff1a;甘露糖-近红外染料CY5.5 英文名称&#xff1a;mannose-Cyanine5.5 别称&#xff1a;CY5.5修饰甘露糖&#xff0c;CY5.5-甘露糖 PEG分子量可选&#xff1a;350、550、750、1k、2k、34k、5k 包装&#xff1a;…

es(网站的搜索技术)

一。搜索技术 springboot集成es ElasticsearchRestTemplate mapping 继承 extends ElasticsearchRepository 实体类写的映射关系&#xff1a; 注解&#xff1a;Document用来声明Java对象与ElasticSearch索引的关系 indexName 索引名称(是字母的话必须是小…

线性回归的神经网络法——机器学习

一、算法思想 线性回归方程在神经网络深度学习中线性回归方程是需要掌握的最基础的式子&#xff0c;就是&#xff1a;ywxb,其中w,b是未知的。 神经网络就是可以通过收集大量的数据集&#xff0c;然后将这些数据集进行训练后得到几个较为准确的参数&#xff0c;训练数据集后会得…

MongoDB单机集群方案及详解

目录帮助文档MongoDB在企业级网站中的定位单机MongoDB部署集群&#xff08;副本集&#xff09;集群&#xff08;副本集仲裁&#xff09;集群&#xff08;分片&#xff09;mongo运行原理mongo管理小工具推荐帮助文档 MongoDB官方更新速度过快&#xff0c;语法不断更新&#xff…

云南民族文化旅游网页设计制作 简单静态HTML网页作品 我的家乡网页作业成品 学生旅游网站模板

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法&#xff0c;如盒子的嵌套、浮动、margin、border、background等属性的使用&#xff0c;外部大盒子设定居中&#xff0c;内部左中右布局&#xff0c;下方横向浮动排列&#xff0c;大学学习的前端知识点和布局方式都有…

m基于光纤光栅传感网接入GPON的光纤通信系统matlab性能仿真,包括解码,解封装,分接,码率恢复,解帧,拆包,译码

目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 接入处理系统模块化设计&#xff1a; 传感器接收到的信息转换为二进制信息&#xff08;这个我们可以直接模拟出随机的二进制序列来表示传感器的数据&#xff0c;首先设置一组数据&#…

maven学习: 使用Maven构建Web项目

5.1 Maven中Web项目的结构 ​ 在java的世界中&#xff0c;Web应用占有很大的地位&#xff0c;而它的标准打包方式是WAR。WAR与JAR类似&#xff0c;但它包含了更多内容&#xff0c;如JSP文件、Servlet、web.xml配置文件、静态web资源&#xff08;如html&#xff0c;css&#xf…

Python Gui之tkinter

GUI是什么 目录 1。GUI编程的核心步骤和第一个GUI程序 2.tkinter主窗口​​​​​​​ 3.GUI的整体描述 常用组件汇总 4.简单的组件 1.Label标签 2.Options选项详解 3.Button 4.Entry单行文本框 5.Text多行文本框 1。GUI编程的核心步骤和第一个GUI程序 from tkinte…

biaffine model:Named Entity Recognition as Dependency Parsing

论文名称&#xff1a;Named Entity Recognition as Dependency Parsing 论文地址&#xff1a;https://www.aclweb.org/anthology/2020.acl-main.577/ 前提说明 本文主要参考了以下资料 nlp_paper_study_information_extraction/code_pytorch.md at main km1994/nlp_paper_s…

ASEMI肖特基二极管SBT40100VFCT规格,SBT40100VFCT封装

编辑-Z ASEMI肖特基二极管SBT40100VFCT参数&#xff1a; 型号&#xff1a;SBT40100VFCT 最大重复峰值反向电压&#xff08;VRRM&#xff09;&#xff1a;100V 最大平均正向整流输出电流&#xff08;IF&#xff09;&#xff1a;40A 峰值正向浪涌电流&#xff08;IFSM&#…

使用kubeadm搭建高可用集群-k8s相关组件及1.16版本的安装部署

本文是向大家分享k8s相关组件及1.16版本的安装部署&#xff0c;它能够让大家初步了解k8s核心组件的原理及k8s的相关优势&#xff0c;有兴趣的同学可以部署安装下。 什么是kubernetes kubernetes是Google 开源的容器集群管理系统&#xff0c;是大规模容器应用编排系统&#xff…

ubuntu下jupyter notebook设置远程访问

1. 安装anaconda 推荐安装anaconda&#xff0c;安装后就会包含jupyter notebook 使用命令conda list或者pip list查看jupyter notebook包&#xff0c;这里不多介绍 2. 生成默认配置文件 在ubuntu环境下&#xff0c;安装jupyter notebook后&#xff0c;用户主目录中会有一个…

DRU-Net--一种用于医学图像分割的高效深度卷积神经网络

Title:DRU-NET: AN EFFICIENT DEEP CONVOLUTIONAL NEURAL NETWORK FOR MEDICAL IMAGE SEGMENTATION 摘要 本文的网络结构是受ResNet和DenseNet两个网络的启发而提出的。与ResNet相比本文的方法增加了额外的跳跃连接&#xff0c;但使用的模型参数要比DenseNet少的多。 基于先…