Python——基本语法(一)

一、程序和⽤户交互

        python 中 使⽤ input 函数实现

input("这⾥写提示信息, 必须使⽤引号引起来")

二、变量

In [1]: n = input("输入数字")
输入数字8

In [2]: n
Out[2]: '8'

 

        1.变量命名潜规则: 

  •         不要以单下划线和双下划线开头;如:_user或 __user
  •         变量命名要易读;如:user_name,⽽不是username
  •         不⽤使⽤标准库中(内置)的模块名或者第三⽅的模块名
  •         不要⽤这些 Python 内置的关键字:
In [4]: keyword.kwlist
Out[4]: 
['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']

  

        2.如何理解 python 的变量赋值 

s = 'hello'
  •         hello 这个对象会在内存中先被创建,之后再把变量名 s 分配给这个对象。
  •         所以要理解 Python 中的变量赋值,应该始终先看 等号右边 。
  •         对象是在右边先被创建或者被获取 ,在此之后左边的变量名才会被绑定到对象上,这就像是为对象贴上了⼀个标签。
  •         ⼀个对象可以有多个标签或者名字 。 ⽐如: 我们⾃⼰就有很多名字,身份证上的名字,⽹络昵称等。

        示例:

In [5]: a = 1

In [6]: b = a

In [7]: a = 2

In [8]: b
Out[8]: 1

 

        3.多元赋值 

                字符串以及后⾯讲的列表、元组都⽀持这种操作,也要元组解包

In [1]: n1, n2 = 1, 2

In [2]: n1
Out[2]: 1

In [3]: n2
Out[3]: 2

In [4]: s1, s2 = '12'

In [5]: s1
Out[5]: '1'

In [6]: s2
Out[6]: '2'

In [7]: num, s = [10, 'hello']

In [8]: num
Out[8]: 10

In [9]: s
Out[9]: 'hello'

 

三、判断条件

In [10]: n = 10

In [11]: n == 10
Out[11]: True

In [12]: n != 10
Out[12]: False

In [13]: n > 10
Out[13]: False

In [14]: n < 10
Out[14]: False

In [15]: n <= 10
Out[15]: True

In [16]: n >= 10
Out[16]: True

 

                示例

In [17]: n = input("请输入一个数字:")
请输入一个数字:10

In [18]: n == 10
Out[18]: False

 

        会发现返回 False 在编程语⾔中 ,数据是有类型之分的。input() 接收到的任何数据都会成为 字符串类型(str),就是普通的字符串 ⽽ 我们等号 右边的 10 是整型(int)

四、 数据类型

        1.查看数据的类型,使⽤ type

In [19]: n
Out[19]: '10'

In [20]: type(n)
Out[20]: str

In [21]: type(10)
Out[21]: int

 

        2.基本的数据类型 

                整型(int)

In [21]: type(10)
Out[21]: int

In [22]: type(0)
Out[22]: int

In [23]: type(-1)
Out[23]: int

In [24]: type(1)
Out[24]: int

                浮点型(带⼩数点的⼩数)

In [25]: type(1.1)
Out[25]: float

In [26]: type(-1.1)
Out[26]: float

                布尔型

In [27]: type(True)
Out[27]: bool

In [28]: type(False)
Out[28]: bool

                字符串(str)

In [29]: type('10')
Out[29]: str

In [30]: type('hello')
Out[30]: str

In [31]: type('-1.1')
Out[31]: str

                ⼆进制(bytes) 

In [32]: type(b'hello')
Out[32]: bytes

 

五、类型转换 

        转换为 int

In [33]: int('10')
Out[33]: 10

In [34]: int('-10')
Out[34]: -10

In [36]: int(1.9)
Out[36]: 1

        转换为 float

In [37]: float(1)
Out[37]: 1.0

In [38]: float(-1)
Out[38]: -1.0

In [39]: float('1.1')
Out[39]: 1.1

        转换为 str

In [40]: str(111)
Out[40]: '111'

In [41]: str(111.1)
Out[41]: '111.1'

In [42]: str(b'hello', encoding='utf-8')
Out[42]: 'hello'

        转换为⼆进制

In [43]: bytes('亮', encoding='utf-8')
Out[43]: b'\xe4\xba\xae'

In [44]: b = bytes('亮', encoding='utf-8')

In [45]: b
Out[45]: b'\xe4\xba\xae'

In [47]: str(b, encoding='utf-8')
Out[47]: '亮'

In [48]: type(b)
Out[48]: bytes

In [49]: s = str(b, encoding='utf-8')

In [50]: s
Out[50]: '亮'

In [51]: type(s)
Out[51]: str

 

 

六、if 判断语句 

        语法⼀:

if 判断条件: # 冒号必须的
 如果判断条件为真,执⾏这⾥的代码,这⾥的代码必须缩进4个空
格
 并且每⼀⾏代码的缩进要⼀致

        示例

In [52]: n = input("请输入一个数字:")
请输入一个数字:18

In [53]: int(n)
Out[53]: 18

In [54]: type(n)
Out[54]: str

In [55]: n = int(n)

In [56]: type(n)
Out[56]: int

In [57]: if n == 18:
    ...:     print("相等")
    ...: 
相等

 

        语法⼆:

if 判断条件:
 如果判断条件为真,执⾏这⾥的代码
else: # 这⾥的冒号也是必须的
 如果判断条件为假,执⾏这⾥的代码,这⾥的代码必须缩进4个空
格
 并且每⼀⾏代码的缩进都要⼀致
In [58]: n = 19

In [59]: if n == 18:
    ...:     print("相等")
    ...: else:
    ...:     print("不相等")
    ...: 
不相等

 

        语法三:

if 判断条件:
 如果判断条件添加为真,执⾏这⾥的代码,这⾥的代码必须缩进4
个空格
 并且每⼀⾏代码的缩进要⼀致
elif 判断条件: # 这⾥同样需要加条件
 如果判断条件添加为真,执⾏这⾥的代码,这⾥的代码必须缩进4
个空格
 并且每⼀⾏代码的缩进要⼀致
else: # 这⾥的冒号也是必须的
 如果判断条件为假,执⾏这⾥的代码,这⾥的代码必须缩进4个空
格
 并且每⼀⾏代码的缩进都要⼀致        

                elif 根据需求可以出现多个

        示例

In [61]: n = 17

In [62]: if n == 18:
    ...:     print("相等")
    ...: elif n > 18:
    ...:     print("大了")
    ...: elif n < 18:
    ...:     print("小了")
    ...: 
小了

 

七、Python 程序 

        通常我们会把程序的代码写的⼀个⽂件种,这个⽂件就成为 Python 的⼀个程序⽂件,⽂件名⼀般都是以 .py 为结尾,有时候也成为 ⼀个 python 的程序。

        需求:使⽤ vi 编辑器,写猜数游戏的⼩程序

        示例:

[root@192 ~]# vi hello.py

#!/usr/bin/env python3
# file name hello.py

print("猜数游戏开始")

n = input("请输⼊⼀个数字")
n = int(n)

if n == 18:
    print("猜对了")
elif n > 18:
    print("⼤了")
else:
    print("⼩了") 

 

        第⼀⾏不是注释,和 shell 脚本⼀样,是在声明这个脚本默认使⽤的解释器

        执⾏ python 程序

[root@192 ~]# python3 hello.py 
猜数游戏开始
请输⼊⼀个数字19
⼤了
[root@192 ~]# python3 hello.py 
猜数游戏开始
请输⼊⼀个数字8
⼩了
[root@192 ~]# chmod +x hello.py     #给权限
[root@192 ~]# ./hello.py 
猜数游戏开始
请输⼊⼀个数字8
⼩了

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

相关文章

从零开始的 dbt 入门教程 (dbt core 命令进阶篇)

引 根据第一篇文章的约定&#xff0c;我想通过接下来的几篇文章带大家进一步了解 dbt 的用法&#xff0c;原计划这篇文章我会介绍 dbt 命令的进阶用法&#xff0c;进一步认识 dbt 的配置以及如何创建增量表等等零零散散十几个方面的知识点&#xff0c;结果在我写完命令部分发现…

CMake TcpServer项目 链接静态库/动态库

一、链接静态库 查看项目结构 hehedalinux:~/Linux/LinuxServerCpp-Link$ tree . ├── CMakeLists.txt ├── include │ ├── common │ │ ├── Buffer.h │ │ ├── Channel.h │ │ └── Log.h │ ├── http │ │ ├── HttpRequest…

Android Studio 项目结构

manifests&#xff1a;用于存放安卓程序的配置文件 AndroidManifest.xml&#xff1a;这是Android应用程序的清单文件&#xff0c;包含了应用程序的基本信息和组件声明等java&#xff1a;Java源代码文件存放的根目录 主代码 com.example.app&#xff1a;应用程序的主包名&#x…

nginx重定向,根据端口重定向

//直接跳转 if ($server_port 9058 ) {# return 301 https://$host$request_uri;return 301 http://www.baidu.com; }//重定向&#xff0c;不跳转域名&#xff0c;还是原域名 location / {if ($server_port 9058 ) {proxy_pass http://ts.***.***.com:9059;} }$args:GET请求…

世微AP5160宽电压 LED 降压型恒流芯片14-18V 3A 电源PCB线路

这是一款14-18V 3A 电流的PCB设计方案. 运用的是世微AP5160 电源驱动IC,这是一款效率高&#xff0c;稳定可靠的 LED 灯恒流驱动控制芯片&#xff0c;内置高精度比较器&#xff0c;固定 关断时间控制电路&#xff0c;恒流驱动电路等&#xff0c;特别适合大功率 LED 恒流驱动。 …

import { ArrowRight } from “@element-plus/icons-vue“;

今天下午快被这个问题折磨疯了 虽然知道这个问题怎么产生的 但项目里那个碍眼的红线就是去不掉 后来才发现 这是插件的锅 我的心情 你知道我想要说什么的 想必能看到这篇文章的 也知道这个问题是怎么产生的 vue3ts使用的时候 默认是需要带上文件名的 但是引入el组件时 …

yum仓库及NFS共享

目录 一.yum仓库的基本原理 1.Yum概述&#xff1a; 2.Yum实现过程&#xff1a; 二. yum配置文件及命令&#xff1a; 1. 主配置文件&#xff1a; 2. 仓库设置文件&#xff1a; 3 .日志文件&#xff1a; ​编辑4.yum命令详解&#xff1a; 三. 搭建仓库的方式&#xff1a; …

transbigdata笔记:清理研究区域内的轨迹漂移

1 方法介绍 transbigdata 考虑了三种轨迹漂移&#xff0c;需要被清理 速度阈值&#xff1a;如果当前轨迹数据点与之前&#xff08;和后续&#xff09;轨迹数据点之间的速度超过阈值&#xff0c;则视为漂移。 距离阈值&#xff1a;如果当前轨迹数据点与上一个&#xff08;和后…

Python网络爬虫进阶:自动切换HTTP代理IP的应用

前言 当你决定做一个网络爬虫的时候&#xff0c;就意味着你要面对一个很大的挑战——IP池和中间件。这两个东西听起来很大上&#xff0c;但其实就是为了让你的爬虫不被封杀了。下面我就来给你讲讲如何搞定这些东西。 第一步&#xff1a;创建爬虫IP池的详细过程 首先&#xf…

街机模拟游戏逆向工程(HACKROM)教程:[4]MAME的作弊功能

需要对游戏进行逆向分析&#xff0c;我们首先需要了解游戏的内存系统。在一个游戏的运行过程中&#xff0c;游戏中所有的变动&#xff0c;比如玩家的血量&#xff0c;敌人的血量&#xff0c;玩家所在位置&#xff0c;场景的位置&#xff0c;剩余时间&#xff0c;等等一切&#…

【部署LLaMa到自己的Linux服务器】

部署LLaMa到自己的Linux服务器 1、Llama2 项目获取方法1&#xff1a;有git可以直接克隆到本地方法2&#xff1a;直接下载 2、LLama2 项目部署3、申请Llama2许可4、下载模型权重5、运行 1、Llama2 项目获取 方法1&#xff1a;有git可以直接克隆到本地 创建一个空文件夹然后鼠标…

Pandas加载大数据集

Scaling to large datasets — pandas 2.1.4 documentationhttps://pandas.pydata.org/docs/user_guide/scale.html#use-efficient-datatypes官方文档提供了4种方法&#xff1a;只加载需要的列、转化数据类型、使用chunking&#xff08;转化文件存储格式&#xff09;、使用Dask…

使用OAK-D双目深度相机为turtlebot3小型移动机器人添加视觉系统

编辑&#xff1a;OAK中国 首发&#xff1a;oakchina.cn 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ 内容可能会不定期更新&#xff0c;官网内容都是最新的&#xff0c;请查看首发地址链接。 ▌前言 Hello&#xff0c;大家好&#xff0c;这里是OAK中国&#xff0c;我是Ash…

Postman中文文档——安装与更新

前言 postman好不好用&#xff0c;只有自己去用过了才知道&#xff0c;如果你之前没有使用过的&#xff0c;那我建议尝试去安装使用一下。 postman是一款支持http协议的接口调试与测试工具&#xff0c;其主要特点就是功能强大&#xff0c;使用简单且易用性好 。 无论是开发人…

Istio 实战:WasmPlugin(Proxy-Wasm 插件)功能拓展

功能一&#xff1a;添加 header&#xff08;在代码里写死的 header&#xff0c;不做修改&#xff09; 代码分析 主要是通过 proxywasm 库提供的 AddHttpRequestHeader 和 AddHttpResponseHeader 添加 header&#xff0c;同理可以实现 header 的删除和修改 部署生效 tinygo …

【控制篇 / 分流】(7.4) ❀ 02. 对不同运营商IP网段访问进行分流 ❀ FortiGate 防火墙

【简介】公司有两条宽带用来上网&#xff0c;一条电信&#xff0c;一条联通&#xff0c;访问常用的某些网站速度时快时慢。领导要求&#xff0c;根据上网流量的目标运营商IP归属&#xff0c;将流量送到相应的运营商出口去&#xff0c;避免跨运营商上网。那么应该怎么做&#xf…

vivado 使用IP Integrator源

使用IP Integrator源 在Vivado Design Suite中&#xff0c;您可以在RTL中添加和管理IP子系统块设计&#xff08;.bd&#xff09;项目或设计。使用Vivado IP集成程序&#xff0c;您可以创建IP子系统块设计。IP集成程序使您能够通过实例化和将Vivado IP目录中的多个IP核互连。可…

【PostgreSQL内核学习(二十一)—— 执行器(InitPlan)】

执行器&#xff08;InitPlan&#xff09; 概述InitPlan 函数代码段解释ExecInitNode 函数 总结 声明&#xff1a;本文的部分内容参考了他人的文章。在编写过程中&#xff0c;我们尊重他人的知识产权和学术成果&#xff0c;力求遵循合理使用原则&#xff0c;并在适用的情况下注明…

最新使用宝塔反代openai官方API接口搭建详细教程及502 Bad Gateway错误问题解决

一、前言 宝塔反代openai官方API接口详细教程&#xff0c;实现国内使用ChatGPT502 Bad Gateway问题解决&#xff0c; 此方法最简单快捷&#xff0c;没有复杂步骤&#xff0c;不容易出错&#xff0c;即最简单&#xff0c;零代码、零部署的方法。 二、实现前提 一台海外VPS服务…

SpringBoot教程(七) | SpringBoot解决跨域问题

SpringBoot教程(七) | SpringBoot解决跨域问题 上篇文章我们介绍了SpringBoot的拦截器的写法&#xff0c;其中有一个比较重要的步骤&#xff0c;就是把我们写好的拦截器注册到Spring的一个配置类中&#xff0c;这个类是实现了WebMvcConfigurer 接口&#xff0c;这个类很重要&a…