day05学习整理-Python基础

2019/07/31 学习整理

Python基础

格式化输出的三种方式

一、占位符

程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式

比如要求用户输入用户名和年龄,然后打印如下格式:My name is xxx,my age is xxx.

很明显,用逗号进行字符串拼接,只能把用户输入的名字和年龄放到末尾,无法放到指定的xxx位置,而且数字也必须经过str(数字)的转换才能与字符串进行拼接,非常之麻烦,我们来试一试。

age = 19
print('My name is xxx,my age is '+str(age))
# My name is xxx,my age is 19
age = 19
print('My name is xxx,my age is', age)
# My name is xxx,my age is 19
name = '胡歌'
age = 19
print('My name is '+name+' my age is '+str(age))
# My name is 胡歌 my age is 19

上面使用的方法越看越别扭,越看越麻烦。这就需要用到占位符,如:%s(针对所有数据类型)、%d(仅仅针对数字类型)

name = '胡歌'
age = 19
print('my name is %s my age is %s' % (name, age))
# my name is 胡歌 my age is 19
age = 19
print('my age is %d' % age)
# my age is 19

二、format格式化

讲真,很鸡肋的格式化的方法,如果你需要使用这个,遇到多参数的时候,还是需要在句子后面噼里啪啦传上一大堆参数。使用这个不如用占位符或下面的f-String格式化。

name = '胡歌'
age = 19
print("Hello, {}. You are {}.".format(name, age))
# Hello, nick. You are 19.
name = '胡歌'
age = 19
print("Hello, {1}. You are {0}-{0}.".format(age, name))
# Hello, 胡歌. You are 19-19.
name = '胡歌'
age = 19
print("Hello, {name}. You are {age}-{age}.".format(age=age, name=name))
# Hello, 胡歌. You are 19-19.

三、f-String格式化

相比较占位符的方式,python3.6版本新增了f-String格式化的方式,比较简单易懂,这是目前我用的最多的方式,推荐使用这种方式。

name = "nick"
age = 19
print(f"Hello, {name}. You are {age}.")
Hello, nick. You are 19.

大写的F也适用。

name = "nick"
age = 19
print(F"Hello, {name}. You are {age}.")
Hello, nick. You are 19.
age = 19
print(f'{age*2}')
38

再给你秀个以后可能会用到的操作。

salary = 6.6666
print(f'{salary:.2f}')
6.67

基本运算符

一、算术运算符

a = 20; b =10

运算符描述实例
+加 - 两个对象相加a + b 输出结果为 30
-减 - 两个对象相减a - b 输出结果为 10
*乘 - 两个对象相乘或是一个被重复若干次的字符串a * b 输出结果为200
/除 - x除以ya / b 输出结果为2
%取模 - 返回除法的余数a % b 输出结果为0
**幂 - 返回x的y次幂a ** b 输出结果为10的20次方 1000000000000000000000
//取整除 - 返回商的整数部分(向下取整)9 // 2 输出结果为 4
-9 // 2 输出结果为 -5

二、比较运算符

a = 20; b =10

运算符描述实例
==等于 - 比较两个对象是否相等(a == b)
return False
!=不等于 - 比较两个对象是否不相等(a != b)
return True
<>不等于 - 比较两个对象是否不相等(a <> b)
return True 类似!=
>大于 - 比较两个对象的大小(a > b)
return True
<小于 - 比较两个对象的大小(a < b)
return False
>=大于等于 - 比较两个对象的大小(a >= b)
return True
<=小于等于 - 比较亮个对象的大小(a <= b)
return False

三、赋值运算符

a = 20; b =10

运算符描述实例
=简单的赋值运算符c =a + b 将a + b的运算结果赋值给c
+=加法赋值运算符c +=a 等效于 c = c + a
-=减法赋值运算符c -=a 等效于 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

四、逻辑运算符

a = 20; b = 10

运算符逻辑表达式描述实例
andx and y布尔“与” - 如果x为False,x and y 返回False,否则返回y的计算值。(a and b)return 10
(True and False) return False
orx or y布尔“或” - 如果x是非0,它返回x的值,否则它返回y的计算值。(a or b)return 20
(True or False) return True
notnot x布尔“非” - 如果x为True,返回False。如果x为False,返回truenot (a and b) return False

五、身份运算符

身份运算符用于比较两个对象的存储单元

运算符描述实例
isis 是判断两个标识符是不是引用自一个对象x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is notis not 是判断两个标识符是不是引用自不同对象x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。

六、Python运算符优先级

以下表格列出了从最高到最低优先级的所有运算符:

运算符描述
**指数 (最高优先级)
~ + -按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //乘,除,取模和取整除
+ -加法减法
>> <<右移,左移运算符
&位 'AND'
^ |位运算符
<= < > >=比较运算符
<> == !=等于运算符
= %= /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not and or逻辑运算符

流程控制之if判断

语法

if 判断条件:
    执行语句……
else:
    执行语句……

if-condition.jpg

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句。

006faQNTgw1f5wnm0mcxrg30ci07o47l.gif

实例

flag = False
name = 'loser'
if name == 'python':         # 判断变量是否为 python 
    flag = True              # 条件成立时设置标志为真
    print 'welcome boss'     # 并输出欢迎信息
else:
    print name               # 条件不成立时输出变量名称
    
 # loser

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

实例

num = 5     
if num == 3:            # 判断num的值
    print 'boss'        
elif num == 2:
    print 'user'
elif num == 1:
    print 'worker'
elif num < 0:           # 值小于零时输出
    print 'error'
else:
    print 'roadman'     # 条件均不成立时输出
    
# roadman

转载于:https://www.cnblogs.com/Wunsch/p/11276806.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值