python基础语法实践二

举报
tea_year 发表于 2024/11/08 16:25:48 2024/11/08
【摘要】 python语法python是一个独立代码风格,python不用{}来作为代码块,它使用缩进来作为对应代码块if 条件: 代码语句 else: 代码语句空格的数量不受限制,但是空格需要数量一致,在同一代码块中,不允许出现不同的空格数量if 条件: 代码语句 代码语句2 else: 代码语句 代码语句year = 2024 # 声明变量的过程 year是变量名 2024是值 if year %...

python语法

python是一个独立代码风格,python不用{}来作为代码块,它使用缩进来作为对应代码块
if 条件: 代码语句 else: 代码语句
空格的数量不受限制,但是空格需要数量一致,在同一代码块中,不允许出现不同的空格数量
if 条件: 代码语句 代码语句2 else: 代码语句 代码语句
year = 2024 # 声明变量的过程 year是变量名 2024是值 if year % 4 == 0: # 条件 %是取模得到的就是对应除法的余数 print(str(year) + "是闰年")
尝试一下,怎么判断一个数是偶数
能被2整除的数是偶数,用代码表示是
num % 2 == 0
  1. 声明一个变量num 赋值为一个数字 num = 某个数字
  2. 写一个条件num是否能被2整除 if num % 2 == 0:
  3. 打印num是偶数 print(num + "是偶数"
  4. 写一个不成立时的条件else:
  5. 打印num不是偶数print(num + "不是偶数")

变量

所有的变量都是存储在计算机的内存中的,当程序结束时,存在内存上的变量就会被销毁。我们可以理解为变量是一个盒子,当我们给变量赋值时,就是把对应的值装在了盒子中。未来再使用这个变量时,那么盒子里的值就是变量对应的值。
num = 1 print(num) print(num) print(num)
print(1) print(1) print(1)

声明变量

在python中,声明变量不需要关键字
变量名 = 值
注意!!!所谓的变量名是自定义的,我们前面所使用的year num这些都是自定义的。
命名规范
变量不是随便的起名字,很多名字不能起
  • 以数字开头不能用
  • 只能以_开头并且变量中只能包含_
  • 关键字和保留字不能用
Aa\aa\A_a\_aa\a11
关键字和保留字
python已经使用了的赋予它对应功能的单词叫关键字,python未来可能会用来使用的单词叫保留字。
'False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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'
命名方式
如果遇到是一个单词,那就全小写 name num str year
如果遇到复合单词,可以使用驼峰,也可以帕斯卡
驼峰:myName
帕斯卡:MyName
蛇形: my_name
变量命名工具 https://www.chtml.cn/

数据类型

我们在python创建的变量是有类型。
  • 字符串
  • 数值
  • 布尔值
可以通过type(变量)来判断某个变量是什么类型。

字符串 str

如果要程序中声明的变量里保存一些文字,优先使用字符串,所谓字符串就是写在""''。在python中""''没有任何区别。
使用引号写的字符串不能换行,如果要换行有特殊的写法
str = "字符串" # 下面这种写法是错误 str = "字 符串 " # 需要改成 str = ("字" "符串")
建议如果是多行字符串用""" """ ''' '''
str = ''' 多行文本内容 多行文本内容 多行文本内容 多行文本内容 '''
字符串在进行+操作时,是进行拼接的,不进行算术运算
a = "1" b = "2" print(a + b) # 12

数值 num

我们普通的如果没有加引号的数字是num类型
变量名 = 0 变量名 = 1.2
如果声明变量时,一个数字被添加了"",则这个数字就变成了字符串。
a = 1 b = 2 c = 3 print(a + b + c) # 6 print(type(a))
如果是整数,则type类型为int,如果是小数,则为float
num1 = 1 num2 = 1.2 print(type(num1), type(num2)) # int float
注意!!!拼接时,只能字符串和字符串串拼接,如果数字和字符串拼接则会报错,需要用到类型转换的方法
print(1 + "2") # 报错

布尔值 bool

布尔值指的就是对或者错,只有两个值TrueFalse, 未来大概率我们不会经常声明这个变量
a = True b = False
布尔值更多的会用在隐式的转换中。所有的比较运算符的结果都是布尔值(还没讲)
1 > 2 # False 1 < 2 # True

数据类型转换

  • 将别的值转换为布尔值 bool(值)
  • 将别的值转换成字符串 str(值)
  • 将别的值转换成数值 int(值) float(值)

其他值转布尔值

字符串 -> 布尔值

这个字符串是否是非空字符串
"字符串" # 非空字符串 "" # 空字符串 " " # 非空字符串
所有的非空字符串转换为布尔值结果都是True,空字符串转换为布尔值结果为False。通过bool这种形式的转换叫显示转换,在很多地方的转换其实都是隐式转换
if 条件: 执行代码
if判断中,条件的位置就是隐式转换,会把我们写的条件转换成布尔值

数值 -> 布尔值

查看数字是否是0
0转换为布尔值是False,非0的数字转换成布尔值结果都是True
print(bool(1)) # True print(bool(0.1)) # True print(bool(0)) # False prnt(bool("0")) # True 因为"0"是字符串
写代码来检测一下,下面的值转换为布尔值得到的是True还是False
0 # False "0" # True "" # False "字符串" # True 0.1 # True 0.01 # True True # True if 0: print("正确") else: print("错误") # 执行 错误

其他值转数值

int(其他值) float(其他值)

布尔值 -> 数值

因为布尔值只有True和False,转换为数值后,只有1和0,使用int转换结果为整数,使用float转换后,结果为小数1.0和0.0
print(int(True)) # 1 print(int(False)) # 0 print(float(True)) # 1.0 print(float(False) # 0.0

字符串 -> 数值

字符串转数值时很局限,只能转纯数字的字符串。int只能转整数,float可以转小数
int("字符串") # 报错 int("10.5") # 报错 float("字符串") # 报错 float("10.5") # 10.5 int("10") # 10

int

int有基(base)模式
int("值", base)
所谓的base其实就是进制。
十进制 10 表示 10 1 2 3 4 5 6 7 8 9 10
八进制 10 表示 8 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20
二进制 10 表示 2 1 10 11 100 101 110 111 1000
十六进制 10 表示 16 1 2 3 4 5 6 7 8 9 A B C D E F 10
所谓基模式,就是进行进制转换的,把x进制,转换为10进制,base的意思就是把对应的字符串当成是几进制。
# 如果要把8进制中1142转换成十进制 int('1142', 8) # 610 # 如果要把2进制的1111转换成十进制 int("1111", 2) # 15
理解一下int的基模式,把对应的值转换为10进制
# 把 2进制的10 转换为10进制 # 把 4进制的 10 转换为10进制 # 把 8进制的4214转换为10进制 # 把 16进制的FF转换为10进制 # 把 2进制的 121 转换为10进制
num = input('请输入一个数字:') base = input('请输入这个数字的进制:') # int(x进制的数字, x进制) # 计算对应的10进制 result = int(num, int(base)) print(base + "进制的" + num + "转换为10进制为:" + str(result))
尝试下能不能让用户输入一个数字,然后我们判断是偶数还是奇数
num = int(input("请输入一个数字:")) # 判断用户输入的值是奇数还是偶数 # if num % 2 == 0: # print(num, "是偶数") # else: # print(num, "是奇数") if num % 2: print(num, "是奇数") else: print(num, "是偶数")

# 使用勾股定理判断一个三角形是否是直角三角形,需要用户输入三个边的边长 根据勾股定理,得到公式 a*a + b*b = c*c ''' 让用户输入对边的长度 让用户输入剩余两个边的其中一个长度 让用户输入最后一个边的长度 ''' c = int(input("请输入对边的长度:")) a = int(input("请输入临边1的长度:")) b = int(input('请输入临边2的长度:')) # 判断 a*a + b*b 是否等于 c*c # a**2 + b**2 == c**2 # if a * a + b * b == c * c: if a ** 2 + b ** 2 == c ** 2: # 是直角三角形 print('您的角是直角') else: # 不是直角三角形 print('您的角不是直角')

其他值转字符串

转字符串要用str(值)
# num转字符串 print(str(0)) # "0" print(str(1.2)) # "1.2" print(str(215321563165315631)) # "215321563165315631" # bol转字符串 print(type(str(True))) # "True"

运算符

a = 4 + 5
在上面的代码中 = 是一个赋值运算符,表示把等号右边的结果给左边的变量。+也是个运算,让4和5求和。

赋值运算符

赋值运算符有= += -= *= /= %= **= //=
=是最常用,所谓赋值,一定是左边是变量右边是值
变量名 = 值
例如
str1 = "字符串" num1 = 0 bol1 = True # 如果多个变量是一个值,可以同时赋值 变量1 = 变量2 = 变量3 = 值 变量1, 变量2 = 值1, 值2 # 等同于 变量1 = 值 变量2 = 值 变量3 = 值

x=

变量声明后,可以重新赋值。
a = 1 a = 2 print(a) # 2
所谓的 x= 意思就是 变量 = 变量 x 值,x表示各种符号
a = 1 a += 1 # a = a + 1 2 a -= 1 # a = a - 1 0 a *= 1 # a = a * 1 1 a /= 1 # a = a / 1 1 a **= 1 # a = a ** 1 1 a //= 1 # a = a // 1 1 a %= 1 # a = a % 1 0
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。