Python基础2

Python基础2

1.程序与用户的交互

  1.1 输入

    input(): 接收任意属性输入,将所有输入默认字符串处理,并返回字符串类型

    函数语法

       input([prompt])   # prompt 提示信息 

 

1 >>>a = input("input:")
2 >>> type(a)
3 >>> a = input("input:") 
4 >>> type(a)
5 input:123                 # 输入整数
6 <class 'str'>             # 字符串  
7 input:runoob            # 正确,字符串表达式
8 <class 'str'>             # 字符串

 

  1.2 输出

    print(): 1. 括号可以使用逗号隔开多个元素同时打印

          2. 自带end参数,可以控制打印的模板

 

username = input('请输入您的姓名:')  # 用户输入姓名
user_age = input('请输入您的年龄:')  # 用户输入年龄
user_sex = input('请输入您的性别:')  # 用户输入性别
user_job = input('请输入您的工作:')  # 用户输入工作

print("------------ info of %s - ----------" % username)
print("Name: %s" % username)
print("Age: %s" % user_age)
print("Sex: %s" % user_sex)
print("Job: %s" % user_job)
print("------------- end -----------------")  # 通过使用转换符把指定内容放入打印内容中

print("---------- info of %s ----------\n"
      "Name:%s\n"
      "Age:%s\n"
      "Sex:%s\n"
      "Job:%s\n"
      "------------- end -------------"
      % (username, username, user_age, user_sex, user_job))

 

2.基本运算符

  2.1 算数运算符

  a = 10

  b = 21

+ 加 两个对象相加 a + b 输出结果 31
- 减 得到一个负数或者两个数的差 a - b 输出结果 -11
* 乘  两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 210
/ 除  x 除以 y b / a 输出结果 2.1
% 取模  返回除法的余数 b%a 输出结果 1
** 幂  返回x的y次幂 a**b 为10的21次方
// 取整除  向下取接近商的整数
>>> 9//2
4
>>> -9//2
-5

 

 

 

 

  2.2 比较运算符

    假设a = 10, b = 20

== 等于  比较对象是否相等 (a == b) 返回 False
!= 不等于  比较两个对象是否不相等 (a != b) 返回 True
> 大于  返回x是否大于y (a > b) 返回 False
<

小于  返回x是否小于y。

所有比较运算符返回1表示真,返回0表示假。

这分别与特殊的变量True和False等价。注意,这些变量名的大写。

(a < b) 返回 True
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 True

 

 

 

 

  2.3 赋值运算符  =

    2.3.1 增量赋值

      

+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
1 n = 666
2 n = n + 1  # n  +=  1   
3 n = n  -  1  # n  -=  1
4 n = n  *  1  # n  *=  1
5 n = n  /  1  # n  /=  1
6 n = n % 1  # n  %= 1
7 n = n ** 1 # n **= 1
8 n = n // 1 # n //= 1

 

    2.3.2 链式赋值

 

# x = 666
# y = x
# z = y
x = y = z = 666

 

    2.3.3 交叉赋值

 

 1  m = 10
 2  n = 999
 3 # 错误解答
 4 '''
 5 m = n
 6 n = m
 7 print(m,n)  # 999 999
 8 '''
 9 # 方式1 利用中间变量
10 tmp = m
11 m = n
12 n = tmp
13 print(m, n)  # 999 10
14 # 方式2 交叉赋值
15 m, n = n, m
16 print(m, n)  # 999 10

 

    2.3.4 解压赋值

 1 name_list = ['jason', 'kevin', 'tony', 'jack']
 2     # name1 = name_list[0]
 3     # name2 = name_list[1]
 4     # name3 = name_list[2]
 5     # name4 = name_list[3]
 6     # 解压赋值
 7     # name1, name2, name3, name4 = name_list  # 左右两边个数相等
 8     # name1, name2, name3 = name_list  # 少一个不行
 9     # name1, name2, name3, name4, name5 = name_list  # 多一个也不行
10     # 进阶用法:可以打破上述规律  特殊符号 *号
11     name1, *_, name2 = name_list
12     print(name1, _, name2)  # jason ['kevin', 'tony'] jack
13     name1, *_ = name_list
14     name1, name2, *_ = name_list
15     '''
16     *可以接受多余的元素 组织成列表赋值给后面的变量名
17     下划线单独作为变量名 通常表达的意思指向的值没有啥用
18     '''

 

 

  2.4 逻辑运算符

     Python语言支持逻辑运算符,以下假设变量 a = 10 ,b = 20

运算符 逻辑表达式 描述 实例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 x 的值,否则返回 y 的计算值 (a and b) 返回 20
or x or y 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值 (a or b) 返回 10
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True not(a and b) 返回 False
 1 a = 10
 2 b = 20
 3  
 4 if ( a and b ):
 5    print ("1 - 变量 a 和 b 都为 true")
 6 else:
 7    print ("1 - 变量 a 和 b 有一个不为 true")
 8  
 9 if ( a or b ):
10    print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")
11 else:
12    print ("2 - 变量 a 和 b 都不为 true")
13  
14 # 修改变量 a 的值
15 a = 0
16 if ( a and b ):
17    print ("3 - 变量 a 和 b 都为 true")
18 else:
19    print ("3 - 变量 a 和 b 有一个不为 true")
20  
21 if ( a or b ):
22    print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")
23 else:
24    print ("4 - 变量 a 和 b 都不为 true")
25  
26 if not( a and b ):
27    print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")
28 else:
29    print ("5 - 变量 a 和 b 都为 true")

 

  2.5 成员运算符

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False x 在 y 序列中 , 如果 x 在 y 序列中返回 True
not in 如果在指定的序列中没有找到值返回 True,否则返回 False x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True

 

 1 a = 10
 2 b = 20
 3 list = [1, 2, 3, 4, 5 ]
 4  
 5 if ( a in list ):
 6    print ("1 - 变量 a 在给定的列表中 list 中")
 7 else:
 8    print ("1 - 变量 a 不在给定的列表中 list 中")
 9  
10 if ( b not in list ):
11    print ("2 - 变量 b 不在给定的列表中 list 中")
12 else:
13    print ("2 - 变量 b 在给定的列表中 list 中")
14  
15 # 修改变量 a 的值
16 a = 2
17 if ( a in list ):
18    print ("3 - 变量 a 在给定的列表中 list 中")
19 else:
20    print ("3 - 变量 a 不在给定的列表中 list 中")

 

 

 

  2.6 身份运算符

算符描述实例
is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
 1  = 20
 2 b = 20
 3  
 4 if ( a is b ):
 5    print ("1 - a 和 b 有相同的标识")
 6 else:
 7    print ("1 - a 和 b 没有相同的标识")
 8  
 9 if ( id(a) == id(b) ):
10    print ("2 - a 和 b 有相同的标识")
11 else:
12    print ("2 - a 和 b 没有相同的标识")
13  
14 # 修改变量 b 的值
15 b = 30
16 if ( a is b ):
17    print ("3 - a 和 b 有相同的标识")
18 else:
19    print ("3 - a 和 b 没有相同的标识")
20  
21 if ( a is not b ):
22    print ("4 - a 和 b 没有相同的标识")
23 else:
24    print ("4 - a 和 b 有相同的标识")

 

 

 

posted @ 2021-11-03 19:14  XX_Bb  阅读(28)  评论(0编辑  收藏  举报