【Python编程】二、基本语法

简介: 【Python编程】二、基本语法

执行python代码的两种方式

  • python filename:把filename文件交给python解释器,相当于把文件地址交给python解释器,python解释器会找到filename文件,并把文件读到内存执行。在Windows下,不是.py后缀的文件也可以被python运行,被python解释器运行的文件可以是任意后缀名,但是我们正规编程时,应该以py为后缀。
  • cmd模式输入python:直接在命令行输入python,会进入python解释器的交互界面,可以实时解释我们输入的指令并输出执行结果。
python解释器路径

在Windows下,我们可以通过D:\python3\python 1.py来指定使用哪个版本的python解释器。在Linux下我们可以直接把一个py文件增加可执行权限,通过./1.py的方式来执行1.py文件(就像Linux下运行任何可执行文件的方式一样),这种情况下我们并没有指定使用哪个python解释器,所以要在1.py的第一行写入

#!/usr/bin/env python

这句话的意思就是告诉操作系统使用哪个python解释器(python解释器路径),该方式是Linux下特有的。其它方式Windows和Linux下都可以。注意,这句话必须放在整个python脚本文件的第一行。

指定编码方式
coding=utf-8

在python3下,加不加这句话都可以。在python2下,如果有中文就需要加这句话,否则会出现乱码。因为python2默认使用ASCII编码解码,在python3中实际上没有字符串了,所有内容都是字节(本质上全都是Unicode)。比如在Windows下,cmd终端使用的是GBK编码,假如用python2来编译一个带中文字符串的程序,就会出现乱码,而python3中全都是Unicode,所以不会乱码。在编码之间有这样的一个转换关系,你在程序中使用的是utf8,如果终端用GBK方式显示的话,显示是乱码,因为utf8中文占3字节,而GBK中文占两字节,它们两个不能直接转换。只能是先转换成Unicode,然后再转换成另一种编码方式。

python注释

在C语言中使用 /**/ 来注释,在C++中使用 // 进行注释,而我们的python和shell脚本都是使用#进行单行注释,在python中使用多行注释的方式是三引号

""" 
被注释内容 
"""
python解释器与pyc文件

我们写好的python代码都是由python解释来执行的,python代码的执行过程如下

执行Python代码时,如果导入了其他的py文件,在执行过程中会自动生成一个与其同名的 .pyc 文件,该文件是python解释器编译之后产生的字节码。

python变量

首先变量存在的意义就是记录某个状态的变化,变量的本质是一块内存空间的名称,可以把变量理解为一块内存的门牌号,通过这个门牌号去访问内存。我们知道,在C/C++定义变量的时候必须要指定变量的类型。在python中,定义变量的的时候不需要指定类型,python是弱类型的编程语言,直接声明变量并赋值即可。但是变量名的定义要遵循以下规则规则:

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
    [‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]

当我们使用input()函数接收输入的时候,接收到的内容都是以字符串类型接收的,即使你输入的是数字1,var = input(),变量var的值最终是’1’字符串,而不是数字1。

变量的赋值

首先来看两种赋值方式

var1 = 'C/C++'
var1 = 'hello'
var2 = var1

那么上面总共在内存中占多少内存块呢?不管在python中,还是在其它编程语言中,当我们修改一个变量的时候,实际上是拷贝了一份内存空间重新赋给当前变量。而var2=var1的操作,并不会在给var2分配内存,而是让var2和var1指向同一个内存。

书写格式

在C/C++中,可执行代码必须要放在大括号{}内,大括号就是一个作用域,只要在{}内就是一个代码块,代码行之间不需要对齐等操作。但是python是严格按照缩进来控制代码结构的,在编写python代码的时候必须要严格控制缩进,代码之间必须要根据缩进对齐。

if __name__ == __main__:
  tag = input()
  if tag == "hello":
        print("hello")
    elif tag == "world":
        print("world")
while循环
while 条件:
    # 循环体
    break #退出所有循环
    continue #退出本次循环
练习题

1、使用while循环输入 1 2 3 4 5 6 8 9 10

1 #!/usr/bin/env python
  2 # coding=utf-8
  3 
  4 i = 0
  5 while i < 10:
  6     i += 1
  7     if i == 7:
  8         continue
  9     print(i)

2、求1-100的所有数的和

1 #!/usr/bin/env python
  2 # coding=utf-8
  3 
  4 print(sum(range(1, 101))) #一行代码打印
  5 
  6 i = 0
  7 ret = 0
  8 while i < 101:
  9     ret = ret + i
 10     i += 1
 11 print(ret)

3、输出 1-100 内的所有奇数

1 #!/usr/bin/env python
  2 # coding=utf-8
  3 
  4 i = 1
  5 ret = 0
  6 while i < 101:
  7     ret = ret + i
  8     i += 2
  9 print(ret)

4、输出 1-100 内的所有偶数

1 #!/usr/bin/env python
  2 # coding=utf-8
  3 
  4 i = 0
  5 ret = 0
  6 while i < 101:
  7     ret = ret + i
  8     i += 2
  9 print(ret)

5、求1-2+3-4+5 … 99的所有数的和

1 #!/usr/bin/env python
  2 # coding=utf-8
  3 
  4 i = 1
  5 ret = 0
  6 while i < 100:
  7     if i % 2 == 0:
  8         ret = ret - i
  9     else:
 10         ret = ret + i
 11     i += 1
 12 print(ret)


相关文章
|
5天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
5天前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
|
5天前
|
存储 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第39天】在数字时代的浪潮中,掌握编程技能如同掌握了一门新时代的语言。本文将引导你步入Python编程的奇妙世界,从零基础出发,一步步构建你的第一个程序。我们将探索编程的基本概念,通过简单示例理解变量、数据类型和控制结构,最终实现一个简单的猜数字游戏。这不仅是一段代码的旅程,更是逻辑思维和问题解决能力的锻炼之旅。准备好了吗?让我们开始吧!
|
7天前
|
设计模式 算法 搜索推荐
Python编程中的设计模式:优雅解决复杂问题的钥匙####
本文将探讨Python编程中几种核心设计模式的应用实例与优势,不涉及具体代码示例,而是聚焦于每种模式背后的设计理念、适用场景及其如何促进代码的可维护性和扩展性。通过理解这些设计模式,开发者可以更加高效地构建软件系统,实现代码复用,提升项目质量。 ####
|
6天前
|
机器学习/深度学习 存储 算法
探索Python编程:从基础到高级应用
【10月更文挑战第38天】本文旨在引导读者从Python的基础知识出发,逐渐深入到高级编程概念。通过简明的语言和实际代码示例,我们将一起探索这门语言的魅力和潜力,理解它如何帮助解决现实问题,并启发我们思考编程在现代社会中的作用和意义。
|
7天前
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
7天前
|
人工智能 数据挖掘 程序员
Python编程入门:从零到英雄
【10月更文挑战第37天】本文将引导你走进Python编程的世界,无论你是初学者还是有一定基础的开发者,都能从中受益。我们将从最基础的语法开始讲解,逐步深入到更复杂的主题,如数据结构、面向对象编程和网络编程等。通过本文的学习,你将能够编写出自己的Python程序,实现各种功能。让我们一起踏上Python编程之旅吧!
|
8天前
|
数据采集 机器学习/深度学习 人工智能
Python编程入门:从基础到实战
【10月更文挑战第36天】本文将带你走进Python的世界,从基础语法出发,逐步深入到实际项目应用。我们将一起探索Python的简洁与强大,通过实例学习如何运用Python解决问题。无论你是编程新手还是希望扩展技能的老手,这篇文章都将为你提供有价值的指导和灵感。让我们一起开启Python编程之旅,用代码书写想法,创造可能。
|
10天前
|
设计模式 程序员 数据处理
编程之旅:探索Python中的装饰器
【10月更文挑战第34天】在编程的海洋中,Python这艘航船以其简洁优雅著称。其中,装饰器作为一项高级特性,如同船上的风帆,让代码更加灵活和强大。本文将带你领略装饰器的奥秘,从基础概念到实际应用,一起感受编程之美。
|
9天前
|
分布式计算 并行计算 大数据
Python编程中的高效数据处理技巧
Python编程中的高效数据处理技巧
27 0