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 有相同的标识")