python基础01 ——入门和基本语法

目录

标准输出

赋值语句

注释

标准输入

数据类型转换

数学运算符

混合类型运算

字符串连接

转义字符

f-string占位符

f-string 格式化输出

f-string字符串连接

if语句

if-else语句

if-elif-else语句

字符串比较

逻辑运算符 and or not

布尔变量

while循环

for循环,在列表内循环

for循环,使用range函数

break和continue


  • 标准输出

    print('hello, world')
    print("hello, world")
    print('''hello, world''')

字符串的三种形式:单引号,双引号和三个单引号(内部可换行)

语句后面不需要分号结尾

  • 赋值语句

age = 25
type(age)
age = True
type(age)

作用是 创建变量 + 赋值

同一变量可以多次赋值为不同类型

type函数可以判断变量当前的类型

  • 注释

# 分两次打hello, world
print('hello,')  #先打hello
print('world!')  #再打world

类似shell脚本的注释风格

  • 标准输入

name = input("What's your name")


type(name)

input函数可给出提示,并接受标准输入,返回结果为字符串

可以在上面的提示字符串结尾处,即name的后面引号的前面加上\n,这样提示能够换行

  • 数据类型转换

value = int("32")
value = float("3.14159")

int函数把参数转成int,float把参数转成float

  • 数学运算符

5 + 2
5 - 2
5 * 2

5 / 2
5 // 2

-5 % 2
5 ** 2

5 // 2.1
5.1 // 2
5.1 // 2.1

加减乘看起来没什么特别的。

但增加了 //(整数除) 和 **(指数)两个运算符。

注意,不能除尽的情况下,会发现除号 / 的结果其实是浮点数。其实能除尽的情况下 / 的结果也一样是浮点数,用type函数可以检查出来。

要用整数除号 // 才能得到和C、java等语言类似的效果,甚至 // 还支持浮点数,如果有浮点数的话,结果会是浮点数,只是小数位是0。

另外,负数的取余结果和java不一样

  • 混合类型运算

5 + 2
5.0 + 2.0
5 + 2.0

如果都是整数,或者都是浮点数,就不需要提升。

否则会把整数提升成浮点数,然后再进行计算,即第三种情况。

  • 字符串连接

print('hello, ' + 'world')
print('hello, '   'world') 

用加号可以连接,这个和java类似。

不用加号也可以连接,这个和C语言类似。

  • 转义字符

print('123\t456')
print('789\n012')
print('  \'   \\   \"   ')

与C和java类似。

  • f-string占位符

print(f'Hello, world')

name = 'Python'
print(f'Hello, {name}')

print(f'Value is {10 + 2}')

val = 6
print(f'Value is {val + 2}')

f-string是3.6引入的,3.6之前版本要用format函数

  • f-string 格式化输出

print(f'{314159.26535897932384626:^20,.8f}')

冒号后面是指示符,顺序为:对齐方式+宽度+逗号分隔+.精度+类型

这里不展开了,有需要再查文档

  • f-string字符串连接

name = 'world'
print(f'hello, ' + f'{name}')
print(f'hello, '   f'{name}') 

和普通string一样,也支持用加号或者不用加号连接

  • if语句

print('1st test')
if True:
    print('always Ture!')

print('2nd test')
if 2 > 1 :
    print('2 > 1')

if后面的条件判断不需要括号,但需要冒号

必须加缩进,而且缩进必须对齐。缩进取代了C和java用大括号{ }来包含代码段的方式。

(命令行模式下?)缩进块后得有个空行,才能写下一个语句

  • if-else语句

if False:
    print('impossible')
else:
    print('it is True')

print('I am not in if-else')

else后面也要有冒号,也要注意缩进

  • if-elif-else语句

value = 12345678 // 3
if value == 0:
    print(0)
elif value == 1:
    print(1)
else:
    print(2)

elif 后面也要冒号,注意缩进

等价于C和java的 if + else if  + else 写法,只不过按python的缩进规定,else if写起来会变得很难看。而用elif就不会。shell脚本里面也有elif

  • 字符串比较

str = "Test"
if str == 'Test':
    print('str == Test')

if str != 'test':
    print('str != test')

if str < 'test':
    print('T < t')

除了数字之外,字符串也可以直接用 ==   !=   >   < 来比较 。

大于和小于,比的是字符串的编码值。

  • 逻辑运算符 and or not

if True and False:
    print('impossible')

if True or False:
    print('always ture')

if not False:
    print('neg false is true')

and 和 or 都是短路求值的,没有惊奇

  • 布尔变量

value = 1000
expensive = value > 500
cheap = value < 100
type(expensive)
type(cheap)

布尔变量只有两种取值,True和False,首字母一定要大写

  • while循环

value=0
while value < 10 :
    print(f'value is {value}')
    value += 1

while循环和C与java类似,不要括号,要冒号,注意缩进

value += 1 是 value = value + 1 的更好写法,其他运算符号如加减乘除等等都支持,如  -=   *=     /=    //=  ,可以叫做赋值运算符

  • for循环,在列表内循环

for num in [1,2,3,4,5] :
    print(num)

[1,2,3,4,5] 是pthon内置的数据结构,叫做列表list

for .. in 循环可以遍历列表,不要括号,注意冒号和缩进

  • for循环,使用range函数

for num in range(5) :
    print(num)

for num in range(1,5) :
    print(num)

for num in range(1, 10, 2) :
    print(num)

for num in range(10, 1, -1) :
    print(num)

通过输出可以得知range函数的参数

1、下限,只带一个参数时,默认0,包含下限

2、上限,只带一个参数时就表示上限,但不包含上限

3、步长,默认1,可以为负数

注意range返回值不是list列表

  • break和continue

for num in range(5):
    if num == 3:
        break
    print(num)


for num in range(5):
    if num == 3:
        continue
    print(num)

与C和java类似,分别是跳出循环或者是提前结束本次循环

下一篇:python基础02——函数

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值