Python 基础入门笔记———— 数据类型输入输出运算符条件语句循环语句

Posted Xiu Yan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 基础入门笔记———— 数据类型输入输出运算符条件语句循环语句相关的知识,希望对你有一定的参考价值。

文章目录


一、注释

注释分为:单行注释多行注释

  • 单行注释

    # 注释内容
    

    pycharm 中快捷键:ctrl + /

  • 多行注释

    '''
    	注释内容
    	注释内容
    '''
    
    """
    	注释内容
    	注释内容
    """
    

二、数据类型

2.1 数据类型分类


python 检测数据类型的方法:type()

a = 1
print(type(a))  # <class 'int'> -- 整型

b = 1.1
print(type(b))  # <class 'float'> -- 浮点型

c = True
print(type(c))  # <class 'bool'> -- 布尔类型

d = 'test'
print(type(d))  # <class 'str'> -- 字符串

e = [10, '20', 30]
print(type(e))  # <class 'list'> -- 列表

f = (10, '20', True)
print(type(f))  # <class 'tuple'> -- 元组

h = 10, 20, 30
print(type(h))  # <class 'set'> -- 集合

g = 'name':'Kevin', 'age':20
print(type(g))  # <class 'dict'> -- 字典

3.2 数据类型转换

函数说明
int(x)将 x 转换为一个整数
float(x)将 x 转换为一个浮点数
complex(real [,imag])创建一个复数,real为实部,imag为虚部
str(x)将对象 x 转换为字符串
repr(x)将对象 x 转换为表达式字符串
eval(str)用来计算在字符串串中的有效Python表达式,并返回一个对象
tuple(s)将序列列 s 转换为一个元组
list(s)将序列列 s 转换为一个列列表
chr(x)将⼀个整数转换为一个 Unicode 字符
ord(x)将⼀个字符转换为它的 ASCII 整数值
oct(x)将一个整数转换为一个八进制字符串
bin(x)将一个整数转换为一个二进制字符串

示例代码:

# 1. int() -- 将数据转换成整型
num = 1.1
print(type(num))
print(type(int(num)))

# 2. float() --转换成浮点类型
num = 1
print(float(num))
print(type(float(num)))

# 3. tuple() -- 将第一个序列转换成元组
list1 = [1, 2, 3]
print(tuple(list1))
print(type(tuple(list1)))

# 4. list() -- 降低一个序列转换成列表
tu1 = (1, 2, 3)
print(list(tu1))
print(type(list(tu1)))

# 5. eval() -- 将字符串串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '1.1'
str3 = '(1, 2, 3)'
str4 = '[10, 20, 30]'
print(type(eval(str1)))  # <class 'int'>
print(type(eval(str2)))  # <class 'float'>
print(type(eval(str3)))  # <class 'tuple'>
print(type(eval(str4)))  # <class 'list'>

结果如下:


三、输入与输出

3.1 格式化输出

所谓的格式化输出即按照⼀一定的格式输出内容。

3.1.1 格式化符号

格式符号转换
%s字符串
%d有符号的十进制整数
%f浮点数
%c字符
%u无符号十进制整数
%o八进制整数
%x十六进制整数(小写ox)
%X十六进制整数(大写OX)
%e科学计数法(小写’e’)
%E科学计数法(大写’E’)
%g%f 和 %e 的简写
%G%f 和 %E 的简写
  • %06d:表示输出的整数显示位数,不不⾜足以0补全,超出当前位数则原样输出
  • %.2f:表示⼩小数点后显示的⼩小数位数。
  • 格式化字符串除了%s,还可以写为f'表达式'

3.1.2 格式化输出示例

age = 18
name = 'Kevin'
weight = 75.5
student_id = 1

# 我的名字是Kevin
print('我的名字是%s' % name)

# 我的学号是0001
print('我的学号是%04d' % student_id)

# 我的体重是75.50公斤
print('我的体重是%.2f公斤' % weight)

# 我的名字是Kevin,今年18岁了
print('我的名字是%s,今年%d岁了' % (name, age))

# 我的名字是Kevin,明年19岁了
print('我的名字是%s,明年%d岁了' % (name, age+1))

# 我的名字是Kevin,明年19岁了
# f表达式
print(f'我的名字是name,明年age+1岁了')

# %s 扩展
print('我的名字是%s,今年%s岁了,体重是%s' % (name, age, weight))

3.1.3 结束符

print()函数默认带有换行功能,是结束符 end 的作用。示例:print('输出的内容') 等价于 print('输出的内容', end="\\n"),其中 end 可以自定义设置。

示例:

# 默认结束符是 \\n,以下两种效果等同
print('hello world', end='\\n')
print('hello world')

print('-------------')

# 可自定义设置
print('hello', end='\\t')
print('world')

print('hello', end='...')
print('world')

运行结果:


3.1 输入

输入的语法:input("提示信息")
注意:Python中,input() 接收的任何数据默认都是字符串数据类型。

示例:

age = input("请输入年龄")
if age >= 18:
    print("可以上网")
else:
    print("不可以上网")

会报错结果如下:

对输入数据进行数据类型转换,修改代码如下:

age = int(input("请输入年龄:")) # 数据类型转换
if age >= 18:
    print("可以上网")
else:
    print("不可以上网")

结果如下:


四、运算符

1. 算术运算符+   -   *   /   //(整除)   %   ()   **(指数,如:2**3 = 2*2*2)

注意: 混合运算优先级顺序: () 高于  ** 高于 *  /  // % 高于 +  -

2. 赋值运算符=

  • 单个变量赋值
  • 多个变量赋值
    num1, float1, str1 = 10, 0.5, 'hello world'
  • 多变量量赋相同值
    a = b = 10

3. 复合赋值运算符+= -= *= /= //= %= **=(幂赋值运算符,如:c**=a 等价于 c=c**a)

4. 比较运算符== != > < >= <=

5. 逻辑运算符and or not(非)

  • and、or 有短路效果

    def printFalse():
        print("333")
        return False
    
    # 下面中后面的 printFalse()不会被执行,并且 print("111") 会执行
    if True or printFalse():
        print("111")
    
    # 后面的 printFalse()不会被执行,并且 print("222") 不会执行
    if False and printFalse():
        print("222")
    
  • and、or 的扩展用法
    and 运算符,只要有一个值为 0,则结果为 0,否则结果为最后一个非 0 数字
    or 运算符,只有所有值为 0 结果才为 0,否则结果为第一个非 0 数字

    a = 0
    b = 1
    c = 2
    # and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
    print(a and b)  # 0
    print(b and a)  # 0
    print(a and c)  # 0
    print(c and a)  # 0
    print(b and c)  # 2
    print(c and b)  # 1
    # or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
    print(a or b)  # 1
    print(a or c)  # 2
    print(b or c)  # 1
    

五、条件语句

5.1 条件语句语法

注意: 除了三目运算符以外,if 条件成立执行的代码 必须缩进

  • if 语法:
    if 条件:
    	条件成立执行的代码
    
  • if…else…语法:
    if 条件:
    	条件成立执行的代码
    else:
    	条件不成立执行的代码
    
  • 多重判断语法:
    if 条件1:
    	条件1成立执行的代码
    elif 条件2:
    	条件2成立执行的代码
    ......
    else:
    	以上条件都不成立执行执行的代码
    
  • if 嵌套语法:
    if 条件1:
    	条件1成立执行的代码
    	if 条件2:
    		条件2成立执行的代码
    
  • 三目运算符:
    条件成立执行的表达式 if  条件 else 条件不成立执行的表达式
    

5.2 应用示例

猜拳游戏示例:

import random

computer = random.randint(0, 2)
print(computer)
player = int(input('请出拳:0-石头,1-剪刀,2-布:'))

if (player==0 and computer==1) or (player==1 and computer==2) or (player==2 and computer==0):
    print('玩家获胜')
elif player == computer:
    print('平局')
else:
    print('电脑获胜')

其中:

  1. 导入 random 模块:import 模块名
  2. 使用 random 模块中的随机整数功能:random.randint(开始,结束)

三目运算符示例:

a = 1
b = 2
c = a if a > b else b
print(c)  # 2

aa = 10
bb = 20
cc = aa - bb if aa > bb else bb - aa
print(cc)  # 10

六、循环语句

6.1 循环语句语法

注意: 循环条件成立执行的代码 必须缩进

  • while 语法:

    while 条件:
    	条件成立重复执行的代码
    	......
    
  • while 循环嵌套语法:

    while 条件1:
    	条件1成立执行的代码
    	......
    	while 条件2:
    		条件2成立执行的代码
    		......
    
  • for 语法:

    for 临时变量 in 序列:
    	重复执行的代码
    
  • for 循环嵌套语法略…

  • else 语法: 循环可以和 else 配合使用,else 下方缩进的代码指的是当循环正常结束之后要执行的代码

    • while…else
      while 条件:
      	条件成立重复执行的代码
      else:
      	循环正常结束之后要执行的代码
      
    • for…else
      for 临时变量 in 序列:
      	重复执行的代码
      	...
      else:
      	循环正常结束之后要执行的代码
      

6.2 continue 与 break

  • continue: 退出当前一次循环继⽽而执⾏行行下一次循环代码。
  • break: 跳出所有循环。
  • 注意: 当应用于 while...else 和 for...else时,continue 执行 else 中的代码, break 不执行 else 中代码,原因在于 break 时非正常结束。

6.3 应用示例

  • 1 到 100 累加和

    result = 0
    i = 1
    while i <= 100:
        result += i
        i += 1
    print(result)  # 5050
    
  • 1 到 100 中的偶数累加和

    # 法一:
    result = 0
    i = 1
    while i <= 100:
        if i%2 == 0:
            result += i
        i += 1
    print(result)  # 2550
    
    # 法二:
    result = 0
    i = 0;
    while i <= 100:
        result += i
        i += 2
    print(result)  # 2550
    
  • 三角形

    i = 0
    while i < 5:
        j = 0
        while j <= i:
            print("*", end='')
            j += 1
        print()
        i += 1
    
  • 9*9乘法表

    i = 1
    while i <= 9:
        j = 1
        while j <= i:
            print(f'j*i=i*j', end="\\t")
            j += 1
        print()
        i += 1
    
  • continue 和 break 在 while…else 中应用

    i = 1
    while i <= 5:
        if i == 3:
            break  # 不执行下方 结束循环
        print('循环')
        i += 1
    else:
        print('结束循环')
    
    print("--------------")
    
    i = 1
    while i <= 5:
        if i == 3:
            i += 1
            continue  # 执行下方 结束循环
        print('循环')
        i += 1
    else:
        print('结束循环')
    
  • 遍历列表

    list1 = ['Kevin', 'Tom', 'Mark', 'Rose']
    
    for i in list1:
        print(i)
    

以上是关于Python 基础入门笔记———— 数据类型输入输出运算符条件语句循环语句的主要内容,如果未能解决你的问题,请参考以下文章

Python入门基础--用户登陆

Python基础笔记:input()输入与数据类型转换

Python入门——IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化

Python | 基础入门篇Part01——注释数据类型运算符字符串

Python基础入门

Python3入门基础教程