python实战笔记(一)

python实战笔记(一)[Python基础]

[Python注释]
[Python变量]
[Python运算符]
[Python输入输出]

* [输入函数]
* [输出函数(3.x)]
* [格式化输出]

[分支]
[循环]

### Python注释

#### 单行注释

```
# 这是一个单行注释
print("test")

```

#### 多行注释

```
"""
这里就是python的多行注释方式
可以直接分行进行注释操作
本质上是字符串
"""
import this

print("hello world")

```

#### 特殊注释

* `#!/usr/bin/python3`
指定解释器的版本
* `#encoding=utf-8`
`python 2.x`解决中文文本乱码

### Python变量

#### 变量使用

使用之前不用声明;做参数传递时,所有的变量都是**传递引用**

#### 定义变量

```
# arg = val
a = 1

# arg1, arg2 = 1, 2
a, b = 1, 2

# arg1 = arg2 = val
a = b = 3

```

#### 使用变量的好处

节省空间,便于修改,可读性强

#### 使用变量注意事项

* 一个变量只能引用一个数值
* 命名规范
* 数字、字母、下划线
* 见名知义
* 驼峰命名
* 只能使用非关键字
* 区分大小写
* 使用变量之前一定要赋值

### Python数据类型简介

#### 常用数据类型

* Numbers(数值类型)
* Bool(布尔类型)
* String(字符串)
* List(列表)
* Set(集合)
* Tuple(元组)
* Dictory(字典)
* NoneType(空类型)

#### 类型转换

```
num = "6"
print(4 + int(num)) # 10
print(str(4) + num) # 46

```

### Python运算符

#### 算术运算符

```
# + 加法运算符
print(1 + 2) # 3
print("1" + "2") # 12
print([1, 2] + [3, 4]) # [1, 2, 3, 4]

# - 减法运算符
print(1 - 2) # -1

# * 乘法运算符
print(2 * 3) # 6

# ** 幂运算符
m, n = 2, 3
print(m ** n) # 2*2*2/8

# / 除法运算符
print(5 / 2) # 2.5

# // 整除运算
print(5 // 2) # 2
print(5.0 // 2) # 2.0
print(5.99 // 2) # 2.0

# % 求模运算
print(5 % 2) # 1

```

#### 复合运算符

```
num = 2
num = num + 3

# 与下面这种方式等价,且效率更高
num += 3

```

#### 比较运算符

```
# 布尔类型是一种单独的类型

res = 10 != 2
print(res) #True

# a, b指向同一块内存
a = 1
b = 1
print(a == b) #True
print(a is b) #True

#a, b指向不同的内存
a = [1, 2]
b = [1, 2]
print(a == b) #True
print(a is b) #False

#可以使用id(arg)来查看变量所在的内存区域

# 链式比较
print(1 <= 2 < 4) # True

# 逻辑运算
print(1 <= 2 and 2 < 4) #True
print(True or False) #True
print(not False) #True

# 扩展的True和False
# 0和空表示假
# bool(0), bool(""), bool([])
print(0 and True) # 0
print(1 or False) # 1
print(True and 0) # 0
print(1 and 3) # 3

```

#### in操作符

```
li = [1, 2, 3, 4]
print(1 in li) # True
print("x" not in li) # True

str = "aabbccd"
print("ab" in str) # True
print("aabc" not in str) # True

```

### Python输入输出

#### 输入函数

使用内建(不用导入其他的包)的函数**input()**, `python2.x`和`python3.x`中有些不同

* **python2.x**

* raw_input(): 将用户输入的所有内容都当作**字符串**来处理
* input(): 将用户输入的内容当作代码进行处理(可以理解为使用了`raw_input()`和`eval()`函数)
* **python3.x**

* input(): 和`2.x`版本的raw_input()函数相同。

#### 输出函数

**完整函数**:print(values, sep, end, file, flush)

* **values**:需要输出的值,有多个值使用`,`进行分隔
* **sep**:分隔符,默认使用**空格**进行分隔
* **end**:输出完毕后添加的字符,默认是`

`
* **file**:默认是显示器,也可以指定文件
* **flush**:刷新缓冲区,进行立刻输出,默认`false`

```
#输出一个值
print(123)

#输出一个变量
val = 123
print(val)

#输出多个变量
name, year = rity, 1997
print(name, year) #rity 1997

#格式化输出
print("my name is %s, age is %d" % (name, age))
print("my name is {0}, age is {1}".format(name, age))

#输出到文件中
f = open("test.txt", "w")
print("xxxxxx", file = f)

#输出不自动换行
print("123", end="-") # 123-

#使用分隔符
print(1, 2, 3, sep="+") # 1+2+3

```

#### 格式化输出

##### %[(name)][flags][width][.precision]typecode

* **[ ]**:可以省略
* **(name)**:根据指定的名称(key),找到对应的值

```
name, age = "rity", 18
print("name is %(name)s, age is %(age)d"%({"name": name, "age": age})

```

* **width**:输出内容占用的宽度,默认右对齐

```
num = 123
print("%10d" % num) # 123

```

* **flags**:填充或对齐方式

```
#为空表示右对齐(同上)

#-表示左对齐
print("%10d" % num) #123

#0表示使用0填充
min, sec = 5, 8
print("%02d:%02d" % (min, sec)) # 05:08

```

* **.precision**:精度设置,用于`%f`

```
price = 1.239
print("%.2f" % price) # 1.24(四舍五入)

```

### Python分支判断

```
# 单分支判断

age = 17
if age >= 18:
print("You are an adult")

print("end")

# 双分支判断

if age >= 18:
print("You are an adult")
else:
print("You are not an adult")

print("end")

# 多分支判断

score = 59

if 90 <= score <= 100:
print("A")
elif 80 <= score:
print("B")
elif 60 <= score:
print("C")
else:
print("D")

# 常用的三目运算
a, b = 1, 3
x = 2 if a > 2 else 4 # x=4
y = 3 if b < 5 else 2 # y=3

```

### Python循环

```
# while循环,看重循环的条件

num = 0
while num < 4:
print(num)
num += 1

#for循环,多用于遍历
li = [1, 2, 3, 4]
for x in li:
print(x) # 1 2 3 4

# 使用range()函数进行计数迭代
for i in range(1, 10): #[1, 10)
if i % 2: #奇数
print("%d: 奇数" % i)
else:
print("%d: 偶数" % i)

# pass语句,用来占位,没有实际逻辑
if True:
# todo
else:
pass
```

推荐一下我建的python学习交流扣扣qun:850973621,群里有免费的视频教程,开发工具、
电子书籍、项目源码分享。一起交流学习,一起进步!

作者:MetaT1an
链接:https://www.jianshu.com/p/739626ce8b67
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

以上是 python实战笔记(一) 的全部内容, 来源链接: utcz.com/z/537760.html

回到顶部