不要阻止我学 python

不要阻止我学 python,第1张

不要阻止我学 python

老子正在学 python

输入和输出转义字符数据类型

布尔值空值列表元组类型转换 变量和常量

1. 变量2. 常量 运算符字符占位符

1. %2. format()3. f-string 条件判断循环

1. for...in

`break``continue` 2. while

输入和输出

输出

print('Hello World')

输入

input()

eg:

name = input('请输入您的姓名:')
print('姓名:', name)

运行结果:

转义字符

r" " 表示""内部的字符串默认不转义

print(r'这里面的内容nrt不会被转义')

''' ''' 表示换行

print('''第一行
第二行
第三行''')
数据类型 布尔值

大写 True、False 表示布尔值
布尔值可以用 and 、or 和 not 运算,分别表示 且、或、非

>>> 3 > 2
True
>>> 3 > 5
False
>>> not 1 > 2
True
空值

None

列表

list 是一种有序的集合,可以随时添加和删除其中的元素。类似于 JS 的 数组,可以用索引。Python 支持负数索引, -1 索引可以定位到列表的最后一个元素,-2 索引可以定位到列表的倒数第2个元素,依次类推。

append(元素) 追加元素到末尾
insert(索引, 元素) 把元素插入到指定的位置
pop() 删除末尾元素
pop(索引) 删除指定位置的元素

name = ['a', 'b', 'c']
print(name)
元组

tuple 和 list 非常类似,但是 tuple 一旦初始化就不能再改变。

tuple 每个元素的指向永远不能被改变;
若 tuple 的 1个元素指向 list,list 本身是可变的。

“可变的” tuple:

>>> t = ('a', 'b', ['A', 'B'])
>>> t[2][0] = 'X'
>>> t[2][1] = 'Y'
>>> t
('a', 'b', ['X', 'Y'])

意义:因为 tuple 不可变,所以代码更安全。如果可能,能用 tuple 代替 list 就尽量用 tuple。

name = ('a', 'b', 'c')
print(name)

注意:要定义一个只有1个元素的 tuple 时必须加一个逗号,以免误认为()表示数学公式中的小括号这种歧义。

错误:

>>> t = (1)
>>> t
1

正确:

>>> t = (1,)
>>> t
(1,)
类型转换

int(字符串) 可以转换 str 为 int

变量和常量 1. 变量

Python 是动态语言,Java 是静态语言

动态语言:变量本身类型不固定的语言。
静态语言:在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错的语言。

动态语言:

a = 123 # 变量a
print(a)

静态语言:

int a = 123; // 变量a
2. 常量

常量就是不能变的变量,Python 中通常用全部大写的变量名表示常量。

PI = 3.14159265359
运算符

/ 除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:

>>> 9 / 3
3.0

// 为地板除,两个整数的除法仍然是整数:

>>> 10 // 3
3

% 取余:

>>> 10 % 3
1
字符

Python 3 的字符串使用 Unicode,直接支持多语言。种方式纯属自找麻烦,如果没有特殊业务要求,请牢记仅使用 UTF-8 编码。

以 Unicode 表示的 str 通过 encode() 方法可以编码为指定的 bytes

要把 bytes 变为 str,就需要用 decode() 方法

要计算 str 包含多少个字符,可以用 len() 函数

当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

第一行注释是为了告诉 Linux/OS X 系统,这是一个 Python 可执行程序,Windows 系统会忽略这个注释;
第二行注释是为了告诉 Python 解释器,按照 UTF-8 编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

占位符 1. %

在字符串内部,%s 表示用字符串替换,%d 表示用整数替换,%f 表示用浮点数替换,%x 表示用十六进制整数替换。

有几个 %?占位符,后面就跟几个变量或者值,顺序要对应好;
如果只有一个 %?,括号可以省略;
如果不太确定应该用什么,%s 永远起作用,它会把任何数据类型转换为字符串;
如果字符串里面的 % 是一个普通字符,就需要用 %% 来表示一个 %。

>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'
2. format()

写法比 % 麻烦

>>> 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125)
'Hello, 小明, 成绩提升了 17.1%'
3. f-string

使用以 f 开头的字符串,称之为 f-string,它和普通字符串不同之处在于,字符串如果包含 {xxx},就会以对应的变量替换:

>>> r = 2.5
>>> s = 3.14 * r ** 2
>>> print(f'The area of a circle with radius {r} is {s:.2f}')
The area of a circle with radius 2.5 is 19.62
条件判断

elif 是 else if 的缩写

age = 20

if age >= 6:
    print('teenager')
elif age >= 18:
    print('adult')
else:
    print('kid')

if 简写:

if x:
    print('True')
循环 1. for…in

把 list 或 tuple 中的每个元素迭代出来

sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    sum = sum + x
print(sum)
break

退出循环

n = 1
while n <= 100:
    if n > 10: # 当n = 11时,条件满足,执行break语句
        break # break语句会结束当前循环
    print(n)
    n = n + 1
print('END')
continue

跳过当前的这次循环

n = 0
while n < 10:
    n = n + 1
    if n % 2 == 0: # 如果n是偶数,执行continue语句
        continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行
    print(n)

break 和 continue 通常都必须配合 if 语句使用;
break 和 continue 会造成代码执行逻辑分叉过多,容易出错,建议少用。

2. while
sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5701049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存