首页 > 编程语言 >1-2 Python基础语法

1-2 Python基础语法

时间:2023-11-16 13:11:47浏览次数:36  
标签:... name Python 基础 else 语法 print 字符串 input

 1.编码

计算机所有的数据本质上是以0和1的组合来存储

在计算机中会将中文转换为0101010100最终存储到硬盘上

计算机中有一个编码的概念(也就是密码本)

    武     ->      01111111 00011010 010110110

在计算机中有很多种编码

每种编码都有自己的一套密码本,都维护这自己的一套规则,如:
    utf-8编码:
        武     ->      01111111 00011010 010110110
    gbk编码:
        武     ->      11111111 00000010
所以,使用的不同的编码保存文件时,硬盘的文件中存储的0/1也是不同的。

注意事项:以某个编码的形式去进行保存文件,以后就要以这种编码去打开这个文件,否则就会出现乱码。

2.编程初步探索

编码必须要保持一致:保存和打开一致

# -*- coding:utf-8 -*-
# created by xxx

​编辑

建议所有的python代码文件都要以UTF-8的编码保存和读取

3.输出

将结果或者内容呈现给用户

直接用print就可以

关于输出:

  • 默认print在尾部会加换行符

    print("床前明月光")
    print("疑是地上霜")
    ​
    输出:
    床前明月光
    疑是地上霜
  • 想要不换行,则可以这样干

    print("床前明月光",end="")
    print("疑是地上霜",end="")
    ​
    输出:
    床前明月光疑是地上霜
    print("床前明月光",end=",")
    print("疑是地上霜",end=".")
    ​
    输出:
    床前明月光,疑是地上霜.

4.初识数据类型

4.1整型(int)

print(2 + 10)

print(2 * 10)

print(10 / 2)

print(10 % 3)

print(2 ** 4)

4.2字符串(str)

也就是文本信息,例如:姓名、地址、自我介绍

必须有引号引起来

单行字符串

print("我是Ayden")
print('我是Andy')
print('我是"andy')
print("中国宁波鄞州区")

多行字符串

print("""中国宁波鄞州区""")
print('''中国宁波鄞州区''')

 

对于字符串:

  • 加,两个字符串可以通过加号拼接起来。

    print( "我是你大爷" + "是吧" )
  • 乘,让整形和字符串进行相乘,以实现让字符串重复出现N次并拼接起来。

    print(3 * "我想吃饺子")

4.3 布尔类型(bool)

布尔类型中共有两个值:True / False

print(1 > 2)
print(False)
​
print(1 == 1)
print(True)
name = input("请输入你的用户名:")
​
if name == "alex":
    print("用户登录成功")
else:
    print("用户登录失败")

 

补充:

1 > 2 
1 == 3
"ayden" == "andy"
1 == "andy"
​
1 > "andy"  是无法进行比较大小

 

4.4 类型转换

 

上文数据类型int/str/bool有了初步了解,他们都有自己不同的定义方式。

  • int,整型定义时,必须是数字且无引号,例如:5、8、9

  • str,字符串定义时,必须用双引号括起来,例如:”中国”、”666”

  • bool,布尔值定义时,只能写True和False

不同的数据类型都有不同的功能,例如:整型可以加减乘除 而 字符串只能加(拼接)和乘法。 如果想要做转换可遵循一个基本规则:想转换什么类型就让他包裹一些。

例如:str(666) = "666"是将整型转换为字符串、int(“888”)是将字符串转 888。

转换为整形:

# 字符串转换为整形(度可度之人)
  int("666")
  int("999")
  "6" + "9" 的结果应该是: "69"
  int("6") + int("9") 的结果是:15
​
  int("ayden是sb") 报错
  
# 布尔类型转换为整形
  int(True)  转换完等于 1
  int(False) 转换完等于 0

 

转换为字符串

# 整形转字符串
str(345)
str(666) + str(9) 结果为:"6669"
​
# 布尔类型转换为字符串
str(True)  "True"
str(False) "False"

 

转换为布尔类型

# 整形转布尔
bool(1) True
bool(2) True
bool(0) False
bool(-10) True
​
# 字符串转布尔
bool("alex") True
bool("砂玻帮你") True
bool("") False
bool(" ") True

三句话搞定类型转换:

- 其他所有类型转换为布尔类型时,除了 空字符串、0以为其他都是True。

- 字符串转整形时,只有那种 "988" 格式的字符串才可以转换为整形,其他都报错。

- 想要转换为那种类型,就用这类型的英文包裹一下就行。 

  ```
  str(...)
  int(...)
  bool(...)
  ```

  

5. 变量

变量,其实就是我们生活中起别名和外号,让变量名指向某个值,格式为: 【变量名 = 值】,以后可以通过变量名来操作其对应的值。

name = "andy"
print(name) # andy
age = 18
name = "ayden"
flag = 1 > 18
address = "宁波鄞州" + "高教园区"
addr = "宁波鄞州" + "高教园区" + name   # "宁波鄞州高教园区ayden"
​
print(addr)
print(flag)
age = 18
number = 1 == 2

注意:

  • 给变量赋值 age = 18

  • 让age代指值 age=18

 

5.1 变量名的规范

age = 18
name = "alex"
flag = 1 > 18
address = "北京昌平" + "沙河"

三个规范(只要有一条就会报错):

  • 变量名只能由 字母、数字、下划线 组成。

  • 不能以数字开头

    na9me9 = "ayden"
  • 不能用Python内置的关键字

    def = "ayden"
    break = 123

    [‘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’]

两个建议:

  • 下划线连接命名(小写)

    father_name = "yongwuzheng"
    brother_age = 19
  • 见名知意

    age = 18
    color = "red"
    current_user_name = "吉诺比利"

5.2 变量内存指向关系

通过学习上述变量知识让我们对变量了有了初步认识,接下来我们就要从稍稍高级一些的角度来学习变量,即:内存指向(在电脑的内存中是怎么存储的)。

情景一

name = "wupeiqi"

在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。

情景二

name = "wupeiqi"
name = "alex"

在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。然后又再内存中创建了一块域保存字符串”alex”,name变量名则指向”alex”所在的区域,不再指向”wupeiqi”所在区域(无人指向的数据会被标记为垃圾,由解释器自动化回收)

 

情景三

name = "wupeiqi"
new_name = name

在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。new_name变量名指向name变量,因为被指向的是变量名,所以自动会转指向到name变量代表的内存区域。

情景四

name = "wupeiqi"
new_name = name
name = "alex"

在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域(灰色线), 然后new_name指向name所指向的内存区域,最后又创建了一块区域存放”alex”,让name变量指向”alex”所在区域.

 

情景五

num = 18
age = str(num)

在计算机的内存中创建一块区域保存整型18,name变量名则指向这块区域。通过类型转换依据整型18再在内存中创建一个字符串”18”, age变量指向保存这个字符串的内存区域。

 

6. 注释

写代码时候,如果想要对某写内容进行注释处理,即:解释器忽略不会按照代码去运行。

- 单行注释

  ```python
  # 声明一个name变量
  name = "alex"
  
  age = 19 # 这表示当前用户的年龄
  
  注意:快捷点 command + ?  、   control + ?
  ```

- 多行注释

  ```python
  # 声明一个name变量
  # 声明一个name变量
  # 声明一个name变量
  name = "alex"
  
  
  """
  多行注释内容
  多行注释内容
  多行注释内容
  """
  age = 19
  ```

  

7. 输入

输入,可以实现程序和用户之间的交互。

```python
# 1. 右边 input("请输入用户名:") 是让用户输入内容。
# 2. 将用户输入的内容赋值给name变量。
name = input("请输入用户名:")

if name == "alex":
  print("登录成功")
else:
  print("登录失败")
```

```python
data = input(">>>")
print(data)
```

**特别注意**:用户输入的任何内容本质上都是字符串。

1. 提示输入姓名,然后给姓名后面拼接一个“烧饼”,提示输入姓名,然后给姓名后面拼接一个“烧饼”,最终打印结果。

   ```python
   name = input("请输入用户名:")
   text = name + "烧饼"
   print(text)
   ```

2. 提示输入 姓名/位置/行为,然后做拼接并打印:xx 在 xx 做 xx 。

   ```python
   name = input("请输入用户名:")
   address = input("请输入位置:")
   action = input("请输入行为:")
   
   text = name + "在" + address + action
   print(text)
   ```

3. 提示输入两个数字,计算两个数的和。

   ```python
   number1 = input("请输入一个数字:") # "1"
   number2 = input("请输入一个数字:") # "2"
   
   value = int(number1) + int(number2)
   print(value)
   ```

   

8.条件语句

if 条件 :
    条件成立之后的代码...
    条件成立之后的代码...
    条件成立之后的代码...
else:
    条件不成立之后执行的代码...
    条件不成立之后执行的代码...
    条件不成立之后执行的代码...
name = input("请输入用户名:")
if name == "alex":
  print("sb")
else:
  print("db")

提醒:统一缩进问题(都是使用四个空格 = tab)。

name = input("请输入用户名:")
if name == "alex":
    print("sb")
   print("sb")
else:
    print("db")

 

8.1 基本条件语句

  • 示例1

    print("开始")
    if True:
      print("123")
    else:
      print("456")
    print("结束")
    ​
    # 输出结果
    开始
    123
    结束
  • 示例2

    print("开始")
    if 5==5:
      print("123")
    else:
      print("456")
    print("结束")
  • 示例3

    num = 19
    if num > 10:
        print("num变量对应值大于10")
    else:
        print("num变量对应值不大于10")
  • 示例4

    username = "wupeiqi"
    password = "666"
    if username == "wupeiqi" and password == "666":
        print("恭喜你,登录成功")
    else:
        print("登录失败")
  • 示例5

    username = "wupeiqi"
    ​
    if username == "wupeiqi" or username == "alex":
        print("VIP大会员用户")
    else:
        print("普通用户")
  • 示例6

    number = 19
    if number%2 == 1:
        print("number是奇数")
    else:
        print("number是偶数")
    number = 19
    data = number%2 == 1
    if data:
        print("number是奇数")
    else:
        print("number是偶数")
  • 示例7

    if 条件:
      成立
    print("开始")
    if 5 == 5:
      print("5等于5")
    print("结束")

 

8.2 多条件判断

if 条件A:
  A成立,执行此缩进中的所有代码
  ...
elif 条件B:
  B成立,执行此缩进中的所有代码
  ...
elif 条件C:
  C成立,执行此缩进中的所有代码
  ...
else:
  上述ABC都不成立。
num = input("请输入数字")
data = int(num)
if data>6:
  print("太大了")
elif data == 6:
  print("刚刚好")
else:
  print("太小了")
score = input("请输入分数")
data = int(score)
​
if data > 90:
  print("优")
elif data > 80:
  print("良")
elif data > 70:
  print("中")
elif data > 60:
  print("差")
else:
  print("不及格")

 

8.3 条件嵌套

if 条件A:
  ...
elif 条件B:
  ...
if 条件A:
    if 条件A1:
        ...
    else:
        ...
elif 条件B:
    ...

模拟10086客服

print("欢迎致电10086,我们提供了如下服务: 1.话费相关;2.业务办理;3.人工服务")
​
choice = input("请选择服务序号")
​
if choice == "1":
    print("话费相关业务")
    cost = input("查询话费请按1;交话费请按2")
    if cost == "1":
        print("查询话费余额为100")
    elif cost == "2":
        print("交互费")
    else:
        print("输入错误")
elif choice == "2":
    print("业务办理")
elif choice == "3":
    print("人工服务")
else:
    print("序号输入错误")

 

 

 

 

 

 

 

 

 

标签:...,name,Python,基础,else,语法,print,字符串,input
From: https://www.cnblogs.com/zhengyongwu/p/17835989.html

相关文章

  • python3 json.dumps(OrderDict类型) 报错:TypeError: Object of type datetime is not
    chatgpt给出的解决方案,在json.dumps()函数调用中传入default参数来指定如何处理datetime对象importjsonfromdatetimeimportdatetimedefdatetime_handler(obj):ifisinstance(obj,datetime):returnobj.__str__()#另一种处理,转换为自定义格式化字符串......
  • [940] Create a progress bar in Python
    TocreateaprogressbarinPython,youcanusethetqdmlibrary,whichisapopularlibraryforaddingprogressbarstoyourloops.Ifyouhaven'tinstalledityet,youcandosousing:pipinstalltqdmHere'sasimpleexampleofhowtousetqd......
  • 标量衍射计算指南(python 实现)
    标量衍射计算指南(python实现)Introduction本文的目的总结一些标量衍射的计算方法,并讨论讨论他们的适用条件。代码和例子在:https://github.com/zhemglee/Scalardiffraction需要的预备知识:涉及的数理知识并不高深,主要是线性系统和傅里叶变换(离散傅里叶变换)的基础知识,当然还有光学。涉......
  • Python类对象:属性、继承与多继承
    在Python中,类是创建对象的蓝图。类定义了如何创建对象,并决定了这些对象的属性和行为。本博客将深入探讨Python类对象的属性、继承以及多继承。属性属性是类的特性,它定义了对象的状态。每个对象都有其自己的属性副本。python复制代码classPerson:def__init__(self,name,a......
  • python深度学习——一个简单的全连接神经网络,预测mnist手写数字
    代码来自《python深度学习》第二章:fromtensorflow.keras.datasetsimportmnistfromtensorflowimportkerasfromtensorflow.kerasimportlayers(train_images,train_labels),(test_images,test_labels)=mnist.load_data()print(train_images.shape)print(len(trai......
  • python机器学习算法原理实现——MCMC算法之gibbs采样
    【算法原理】Gibbs采样是一种用于估计多元分布的联合概率分布的方法。在MCNC(Markov Chain Monte Carlo)中,Gibbs采样是一种常用的方法。通俗理解Gibbs采样,可以想象你在一个多维空间中,你需要找到这个空间的某个特定区域(这个区域代表了你感兴趣的分布)。但是,你不能直接看到整个空间,只......
  • OSS+S3+python S3
    OSS是什么? 参考:https://zhuanlan.zhihu.com/p/544661650 ......
  • 掌握终端基础技巧:Linux下的文件和目录复制操作
    1.cp命令:在Linux中,cp命令用于复制文件和目录。基本语法如下:cp[选项]源文件目标文件其中,源文件是要复制的文件名,目标文件是复制后的新文件名或路径。2.复制单个文件:要复制单个文件,只需指定源文件和目标路径即可。例如,将文件file.txt复制到目录path下:cpfile.......
  • Python读取pdf、word、excel、ppt、csv和txt文件提取所有文本
    前言本文对使用python读取pdf、word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结。可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主要目标都是:方便提取文件中所有文本的实现方式。这些库的更多使用方法,请到官方文档中查阅。读取PD......
  • python3修改安全组
    场景:办公网络访问云资源,公司出口IP会变,试试更新到安全组脚本如下:#!/usr/bin/envpython#-*-coding:utf-8-*-#@Time:2023/11/1513:12#@File:security_group.py#@Author:zk_linux#@Software:PyCharm#@Description:importjsonimportsocketfro......