Python: 一些python和Java不同的基础语法

文章目录

  • 1. 数据类型
  • 2. 字符串的引用
  • 3. 字符串拼接
  • 4. Python中的报错
  • 5. Python中的输入语句(input)
  • 6. 运算符(**和//)
  • 7. 除法运算
  • 8. 注释方法: #或者三引号
  • 9. Python中的比较
  • 10. Java中用and, or, not代替逻辑运算符
  • 11. 多元赋值
  • 12. Python不支持自增自减操作
  • 13. 在Python中, 整数可以和布尔类型可以相加, true为1, false为0 (这样设定并无意义)
  • 14. Python中每条语句末尾的分号可有可无, 但是多条语句写在一行必须加分号隔开(不建议这样写)
  • 15. Python中布尔类型首字母要大写
  • 16. Python中的条件语句if
  • 17. Python中的代码块
  • 18. Python中的while循环
  • 19. Python中的for循环: for+ 循环变量+ in +可迭代对象:
  • 20. Python中随机数的生成
  • 21. sys.exit(0) 退出程序

1. 数据类型

int, float, str类型
int类型表示整形, 无穷大, 除了int没有其他表示整形的数据类型了
float类型表示双精度浮点型, Python无double
str是字符串类型
在Python中, 在声明变量时不需要声明变量类型, 系统自动识别变量的类型, 举例如下

a=10
print(type(a))# type识别数据类型

a=1.1
print(type(a))

a=True
print(type(a))

运行结果
在这里插入图片描述

2. 字符串的引用

因为Python中没有字符类型, 所以单引号和双引号都能表示字符串

  1. 当使用字符串类型时单引号和双引号都可以使用 (Python中无字符类型)
a="abcd"
b='abcd'
  1. 当字符串中含有单引号时, 可以使用双引号来引注字符串, 不需要使用转义字符
print("I'm '李华' ")
  1. 当字符串中含有双引号时, 可以使用单引号来引注字符串, 不需要使用转义字符
print('I am "lihua" ')
  1. 当字符串中既有单引号又有双引号时, 可以使用三引号(单双引号打三个)来引注字符串
print("""I'm "lihua" """)

运行结果
在这里插入图片描述

3. 字符串拼接

在Python中, 不能使用字符串类型和数字类型进行拼接

print('hello' + 10)

在这里插入图片描述
需要格式化字符串, f前缀, 这样可以使用大括号添加我们需要的值

a=10
b=20
print(f"sum = {a+b}")

在这里插入图片描述

python最早和C一样, 使用printf加占位符的方式进行字符串格式化
python3.6之后进化成f-string的方式, 更加方便了

4. Python中的报错

  1. 语法错误, 在程序运行之前, Python解释器就能把错误识别出来
  2. 运行错误, 执行到相应代码时才能发现问题

5. Python中的输入语句(input)

python中使用input进行输入, 在执行的时候会等待用户输入数据
input输入的是字符串
如果需要进行运算就要先把读到的内容进行强制转换, 写成类型()

a = input("请输入一个数: ") #input输入的是字符类型, 无法做算术运算
print(type(a))

a = int(a) #类型转换
print(type(a))

在这里插入图片描述

6. 运算符(**和//)

Python中加了两个运算符**(整数是乘方, 小数是开方), //(取整除法, 对计算结果进行"向下取整", 取较小整数)

print(2**3) #乘方
print(2**0.5) #开方
print(5//2) #向下取整
print(-5//2) #向下取整

在这里插入图片描述

7. 除法运算

Python中, 整数除以整数会出现小数

print(5/2)

在这里插入图片描述

8. 注释方法: #或者三引号

# 这是一段注释
"""
这也是一段注释
"""

9. Python中的比较

浮点数比较有风险, 要是用范围比较, 并且在Python中支持链式比较

a = 0.1
b = 0.2
c = 0.3
print(a+b == c) #打印False
# 原因
print(a+b) #打印0.30000000000000004
print(c) #打印0.3
# 正确比较方法
print(c-0.00001 < a+b < c+0.00001)
# 支持链式比较, Java中需要这样写: c-0.00001 < a+b && a+b < c+0.00001

在这里插入图片描述

10. Java中用and, or, not代替逻辑运算符

这样是代码的可读性更强, and为且(&&), or为或(||), not为非(!)

11. 多元赋值

不需要使用临时变量就可以进行两值交换

a, b = 10, 20
# 在Java中交换两个变量的值需要用到中间变量或者使用异或操作符
# 在Python中就可以使用下面方法完成交换操作
print(f"交换之前 a = {a}, b = {b}")
a, b = b, a
print(f"交换之后 a = {a}, b = {b}")

在这里插入图片描述

12. Python不支持自增自减操作

在这里插入图片描述

13. 在Python中, 整数可以和布尔类型可以相加, true为1, false为0 (这样设定并无意义)

print(10+True)
print(10+False)

在这里插入图片描述

14. Python中每条语句末尾的分号可有可无, 但是多条语句写在一行必须加分号隔开(不建议这样写)

在这里插入图片描述

15. Python中布尔类型首字母要大写

在这里插入图片描述
在这里插入图片描述

16. Python中的条件语句if

Python中if条件语句判断条件不加括号, 在结尾加冒号(表示条件结束), 且else if写为elif

# 判断正负数
a = int(input('请输入一个数: '))
if a>0:
    print('正数')
elif a<0:
    print('负数')
else:
    print(a)

在这里插入图片描述

17. Python中的代码块

Python中使用缩进的方式来表示代码块, Java则使用{}将相关代码括起来

a=int(input("请输入一个数: "))
b=int(input("请输入一个数: "))
if(a==1):
    print('aaa')
    if(b==1):
        print('bbb')
print('ccc')

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以按照下面这个图理解, 但这是一个错误的写法
在这里插入图片描述

18. Python中的while循环

跟if语句一样, 判断条件不加括号, 而要在判断条件之后加冒号, 表示条件语句的结束

a = 10
while a > 0:
    print(a)
    a = a - 1
# 也是以缩进的方式来表示代码块

在这里插入图片描述

19. Python中的for循环: for+ 循环变量+ in +可迭代对象:

range是Python中的一个内置函数, 起到的效果就是得到一个"可迭代对象", 这个可迭代对象中就包含了一系列的整数
range(beg, end), 从beg开始到end结束, 左闭右开
range(beg, end, 步长), 步长默认是1, 步长为每两个数的间隔

for i in range(1,11):
    print(i)
print(('======================='))
for i in range(1,11,2):
    print(i)

在这里插入图片描述
shift+F6或者fn+F6 重命名快捷键

20. Python中随机数的生成

random.randint可以生成随机数, 左闭右闭, random是Python中的一个模块, 是别人写好给我们来使用的, 负责专门生成随机数

import random

a=random.randint(1,10)#生成1-10的随机数
print(a)

在Python中如果要使用模块, 要先使用import进行导入
在这里插入图片描述

21. sys.exit(0) 退出程序

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

jenkins 使用教程

1. 安装最新长期稳定版 2.426.1 Redhat Jenkins Packages sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo --no-check-certificate sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key yum insta…

Oracle线上执行SQL特别慢的原因分析

一、背景&#xff1a; 线上反馈一张表select * from table where idxxx语句执行特别慢&#xff0c;超过60s超时不能处理&#xff0c;第一直觉是索引失效了&#xff0c;开始执行创建索引语句create index index_name on table() online。但是执行了超过20分钟索引还没有创建成功…

python课设——宾馆管理系统

python课设——宾馆管理系统 数据库课设-宾馆管理系统-python3.7pyqt5 简介 大二数据库课程设计&#xff08;3-4天工作量&#xff09;的项目&#xff0c;登录界面的ui设计参考了他人成果&#xff0c;其余ui以及所有后端部分全部独立完成&#xff0c;详细功能见功能模块图使用…

简单实现一个本地ChatGPT web服务(langchain框架)

简单实现一个本地ChatGPT 服务&#xff0c;用到langchain框架&#xff0c;fastapi,并且本地安装了ollama。 依赖安装&#xff1a; pip install langchain pip install langchain_community pip install langchain-cli # langchain v0.2 2024年5月最新版本 pip install bs4 pi…

Unity | Shader基础知识(第十八集:Stencil应用-透视立方盒子)

目录 一、前言 二、场景布置 三、 shader部分 1.图片的部分 2.图片部分纯净代码 3.遮罩部分复习 4.深度写入 ZWrite 5.颜色遮罩ColorMask 6.遮罩纯净代码 四、场景中shader使用 五、作者的碎碎念 一、前言 因为这个内容稍微有点多&#xff0c;我尽力讲清楚了&#x…

速部署 HBase 测试环境

快速部署 HBase 测试环境 第一步&#xff1a;下载软件&#xff0c;在HBase官网下载最新版&#xff0c; 找到 bin&#xff0c;点击下载&#xff0c;比如我这里下载的是 hbase-2.5.6-bin.tar.gz 第二步&#xff1a;解压软件 $ tar -zxvf hbase-2.5.6-bin.tar.gz $ cd hbase-2.…

业务终端动态分配IP-DHCP技术、DHCP中继技术

一、为什么需要DHCP? 1、许多设备(主机、无线WiFi终端等)需要动态地址的分配; 2、人工手工配置任务繁琐、容易出错,比如:IP地址冲突; 3、网络规模扩大、复杂度提高,网络配置越来越复杂,计算机的位置变化和数量超过可分配IP地址的数量,造成IP地址变法频繁以及IP地址…

微信小游戏 彩色试管 倒水游戏 逻辑 (四)

最近开始研究微信小游戏&#xff0c;有兴趣的 可以关注一下 公众号&#xff0c; 记录一些心路历程和源代码。 定义了一个名为 WaterFlow class&#xff0c;该类继承自 cc.Graphics&#xff0c;用于在 Cocos Creator 中创建和显示水流的动画效果。下面是对代码的详细解释&#x…

FPGA FIR fdatool filter designer MATLAB

位数问题 fdatool 先确定输入信号的位宽&#xff0c;比如17位在fdatool中&#xff0c;选set quantization parameters 选input/output 设置input word length 为17bit(not confirmed) fir compiler implementation 注意&#xff1a; 当设置输入位宽为16位时&#xff0c;ip核…

智能手术新时代:Apple Vision Pro在医疗领域的突破性应用

无人驾驶的未来&#xff1a;AI如何重塑我们的出行世界-CSDN博客文章浏览阅读2.2k次&#xff0c;点赞109次&#xff0c;收藏64次。无人驾驶汽车的发展是AI技术应用的一次伟大尝试。特斯拉与百度“萝卜快跑”在这个领域的竞争与合作&#xff0c;不仅展示了AI技术的强大潜力&#…

记录些MySQL题集(6)

MySQL 单表为什么不要超过 2000W 行&#xff1f; 数据持久化在磁盘中&#xff0c;磁盘的最小单元是扇区&#xff0c;一个扇区 0.5 KB&#xff0c;而由 8 个扇区可以构成一个文件系统块&#xff08;4K&#xff09;&#xff0c;以 InnoDB 存储引擎为例&#xff0c;一个数据页的大…

React Native 自定义 Hook 获取组件位置和大小

在 React Native 中自定义 Hook useLayout 获取 View、Pressable 等组件的位置和大小的信息 import {useState, useCallback} from react import {LayoutChangeEvent, LayoutRectangle} from react-nativeexport function useLayout() {const [layout, setLayout] useState&l…

MySQL数据库查询索引失效场景

在连表情况下,如果排序字段涉及到了两个表,排序字段将无法走索引. 加上第二个排序字段之后,走全表扫描了. 或者尽量让两次排序都用同一个表的字段,这样可以建联合索引让排序也能走索引.&#xff08;不想建联合索引的话&#xff0c;可以第二次排序用表id&#xff0c;这样单个的…

《昇思25天学习打卡营第25天|第10天》

今天是打卡的第十天&#xff0c;今天开始学应用实践中的LLM原理和实践&#xff0c;今天学的是基于MindSpore实现BERT对话情绪识别。最先了解的是BERT模型的简介&#xff08;来自变换器的双向编码器表征量&#xff08;Bidirectional Encoder Representations from Transformers&…

暑期-大数据人工智能学习-在线实习项目

这个暑期 默默努力一把 悄悄惊艳所有人 在线企业项目试岗实训 助你突破固有思维模式&#xff0c;伴你进阶成长

Prometheus 云原生 - Prometheus 数据模型、Metrics 指标类型、Exporter 相关

目录 开始 Prometheus 数据类型 简单理解 时序样本 格式 和 命名要求 Metrics 指标类型 Counter 计数器 Gauge Histogram Summary Exporter 相关 概述 Exporter 类型 Exporter 规范 开始 Prometheus 数据类型 简单理解 a&#xff09;安装好 Prometheus 后会暴露…

Nginx、LNMP万字详解

目录 Nginx 特点 Nginx安装 添加Nginx服务 Nginx配置文件 全局配置 HTTP配置 状态统计页面 Nginx访问控制 授权用户 授权IP 虚拟主机 基于域名 测试 基于IP 测试 基于端口 测试 LNAMP 解析方式 LNMP转发php-fpm解析 Nginx代理LAMP解析 LNMP部署示例 实…

Android:将自定义视图设为互动式

一、简介 点击查看将自定义视图设为互动式官网文档 绘制界面只是创建自定义视图的一个部分。您还需要让视图以非常类似于您模仿的真实操作的方式响应用户输入。 让应用中的对象的行为方式与真实对象相似。例如&#xff0c;不要让应用中的图片消失后重新出现在其他位置&#x…

模块化和包管理工具

一&#xff0c;模块化 1.定义 将一个复杂的程序文件依据一定规则&#xff08;规范&#xff09;拆分成多个文件的过程称之为 模块化 其中拆分出的 每个文件就是一个模块 &#xff0c;模块的内部数据是私有的&#xff0c;不过模块可以暴露内部数据以便其他模块使用 2.模块化…

NC65 流程设置 选择项目(project)参照时,得到的是合并报表项目参照

NC65 流程设置 枚举项选择项目&#xff08;project&#xff09;参照时&#xff0c;取值得到的是合并报表项目参照&#xff0c;如下图&#xff0c; 造成以上原因是因为存在相同编码的情况时&#xff0c;默认取该编码的第一个参照名称&#xff0c;而"project"编码对应…