python环境部署和基本语法

一.需求分析和分解技术点

1.程序和用户的交互

python中用input实现

input(“这里写提示信息, 必须使用引号引起来”)

2.变量

用户的输入可以使用一个变量接受

n = input(“请输入一个数字”)

2.1变量命名的潜规则
  • 不要以单下划线和双下划线开头;如:_user或 __user
  • 变量命名要易读;如:user_name,而不是username
  • 不用使用标准库中(内置)的模块名或者第三方的模块名
  • 不要用这些 Python 内置的关键字:

import keyword
keyword.kwlist
[‘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.2如何理解python的变量赋值

s = ‘hello’

以上的变量赋值,应该说成把变量名 s 分配给 hello 这个对象更合理。
hello 这个对象会在内存中先被创建,之后再把变量名 s 分配给这个对象。
所以要理解 Python 中的变量赋值,应该始终先看等号右边
对象是在右边先被创建或者被获取,在此之后左边的变量名才会被绑定到对象上,这就像是为对象贴上了一个标签。

2.3多元赋值

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

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

In [10]: n1
Out[10]: 1

In [11]: n2
Out[11]: 2
In [75]: s1, s2 = '12'    #定义字符串

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

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

In [78]: num, s = [10, 'hello']   # 这个是列表, 后面会讲到

In [79]: num
Out[79]: 10

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

3.python中的判断条件

 n = 10
 n == 10 # 等于
True              # 条件为真,则返回 True
n != 10 # 不等于
False             # 条件为假,则返回 False
n > 10  # 大于
False
 n < 10  # 小于
False
n >= 10  # 大于等于
True
n <= 10 # 小于等于
True

在ipython中实际操作一下

> In [1]: n = input("请输入一个数字>>:") 请输入一个数字>>:10
> 
> In [2]: n == 10 Out[2]: False
> 
> In [3]:

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

4.数据类型

4.1查看数据类型,使用type
In [3]: type(n)    # 查看 input 接收到的数据类型
Out[3]: str

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

In [5]:
4.2 基本的数据类型
  • 整形
In [11]: type(0)
Out[11]: int

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

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

  • 浮点型(带小数点的小数)
In [17]: type(1.1)
Out[17]: float

In [18]: type(-0.1)
Out[18]: float
  • 布尔型
In [19]: type(True)
Out[19]: bool

In [20]: type(False)
Out[20]: bool
  • 字符串(str)
In [14]: type('10')
Out[14]: str

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

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

In [17]:
  • 二进制(bytes)
In [18]: type(b'hello')
Out[18]: bytes

我们来验证一下 input 接收的数据的类型

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

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

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

5.类型转换

要想把用户的输入(str)和整型(int)进行正确的比较大小,就需要把 字符串类型的数据转换整型。
这种把一个数据从一个类型转换为另外一个类型的操作叫类型装换

  • 转换为 int
In [21]: int('10')
Out[21]: 10

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

In [23]: int(1.9)
Out[23]: 1
  • 转换为 float
In [25]: float(1)
Out[25]: 1.0

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

In [27]: float('1.1')
Out[27]: 1.1
  • 转换为 str
In [28]: str(111)
Out[28]: '111'

In [29]: str(-111)
Out[29]: '-111'

In [30]: str(-11.1)
Out[30]: '-11.1'

In [31]: str(b'hello', encoding='utf-8')
Out[31]: 'hello'
  • 转换为二进制
    二进制转换字符串的时候,需要指定字符编码
In [32]: bytes('你好', encoding=('utf-8'))
Out[32]: b'\xe5\x8d\x83\xe9\x94\x8b'

In [58]: b = bytes('你好', encoding=('utf-8'))

In [59]: b
Out[59]: b'\xe5\x8d\x83\xe9\x94\x8b'

In [60]: str(b, encoding='utf-8')
Out[60]: '你好'

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

In [62]: s
Out[62]: '你好'

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

注意字符串转二进制时候,需要指定字符编码

6. if 判断语句

判断条件可以用在 if 判断语句中
语法结构是这样的:

  • 语法一:

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

示例

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

In [40]: n = int(n)

In [41]: if n == 18:
    ...:     print("相等")
    ...:
相等
  • 语法二:

if 判断条件:
如果判断条件为真,执行这里的代码 else: # 这里的冒号也是必须的
如果判断条件为假,执行这里的代码,这里的代码必须缩进4个空格
并且每一行代码的缩进都要一致

示例

In [44]: if n == 10:
    ...:     print("相等")
    ...: else:
    ...:     print("不相等")
    ...:
不相等
  • 语法三:

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

elif 根据需求可以出现多个

示例

In [51]: n = 20

In [52]: if n == 10:
    ...:     print("相等")
    ...: elif n > 10:
    ...:     print("大了")
    ...: else:
    ...:     print("小了")
    ...:
大了

二.python程序

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

使用 vi 编辑器,来把我们这个猜数游戏的小程序写一下吧

#!/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@qfedu.com ~]# ./hello.py
猜数游戏开始
请输入一个数字8
小了

三.while循环

语法:

while 条件表达式:
条件表达示为真,就执行这里的代码,必须缩进 4 个空格
多行代码保持缩进一致
条件表达式可以是:

True# 布尔值的 True 1 < 10 # 凡是在 if 语句中使用的判断表达示,这里都可以使用

猜数游戏优化版本

#!/usr/bin/env python3

print("猜数游戏开始")

while True:
    n = input("请输入一个数字")

    # 如果输入空,就重新开始新一轮的循环
    if not n:
        continue

    # 如果输入 q 就是跳出循环
    if n == 'q':
        break

    n = int(n)

    if n == 18:
        print("猜对了")
    elif  n > 18:
        print("大了")
    else:
        print("小了")

#退出循环后,程序继续运行下面的代码
exit("退出程序..")

四.函数的定义和调用

1.函数的定义

def 函数名():
“”“函数的说明,主要是说明一下函数的主要功能,这是可选的”""
函数体,就是代码
缩进 4 个空格,多行缩进保持一致

函数名的规则和变量名的命名规则一致

2.函数的调用

调用方式:

函数名()

python 属于解释性语言,就是代码需要读一行,解释器解释一行。 因此,函数就像是 定义一个变量,必须先定义函数,才能调用函数。

3.示例

def foo():
print(“我是函数体,只有在调用函数时,这里的代码才会被执行”)

foo() 执行后会输出: 我是函数体,只有在调用函数时,这里的代码才会被执行

那我们现在可以把之前写的猜数游戏,编写函数

#!/usr/bin/env python3

def guess_number():
    """输入一个数字,和18 比较大小"""
    print("猜数游戏开始")

    while True:
        n = input("请输入一个数字")

        # 如果输入空,就重新开始新一轮的循环
        if not n:
            continue

        # 如果输入 q 就是跳出循环
        if n == 'q':
            break

        n = int(n)

        if n == 18:
            print("猜对了")
        elif  n > 18:
            print("大了")
        else:
            print("小了")


#调用函数
guess_number()

exit("退出程序..")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值