1.编码
计算机所有的数据本质上是以0和1的组合来存储
在计算机中会将中文转换为0101010100最终存储到硬盘上
计算机中有一个编码的概念(也就是密码本)
武 -> 01111111 00011010 010110110
在计算机中有很多种编码
每种编码都有自己的一套密码本,都维护这自己的一套规则,如:
utf-8编码:
武 -> 01111111 00011010 010110110
gbk编码:
武 -> 11111111 00000010
所以,使用的不同的编码保存文件时,硬盘的文件中存储的0/1也是不同的。
注意事项:以某个编码的形式去进行保存文件,以后就要以这种编码去打开这个文件,否则就会出现乱码。
2.编程初步探索
编码必须要保持一致:保存和打开一致
# -*- coding:utf-8 -*- # created by xxx
编辑
建议所有的python代码文件都要以UTF-8的编码保存和读取
3.输出
将结果或者内容呈现给用户
直接用print就可以
关于输出:
-
默认print在尾部会加换行符
print("床前明月光") print("疑是地上霜") 输出: 床前明月光 疑是地上霜
-
想要不换行,则可以这样干
print("床前明月光",end="") print("疑是地上霜",end="") 输出: 床前明月光疑是地上霜
print("床前明月光",end=",") print("疑是地上霜",end=".") 输出: 床前明月光,疑是地上霜.
4.初识数据类型
4.1整型(int)
print(2 + 10)
print(2 * 10)
print(10 / 2)
print(10 % 3)
print(2 ** 4)
4.2字符串(str)
也就是文本信息,例如:姓名、地址、自我介绍
必须有引号引起来
单行字符串
print("我是Ayden") print('我是Andy') print('我是"andy') print("中国宁波鄞州区")
多行字符串
print("""中国宁波鄞州区""") print('''中国宁波鄞州区''')
对于字符串:
-
加,两个字符串可以通过加号拼接起来。
print( "我是你大爷" + "是吧" )
-
乘,让整形和字符串进行相乘,以实现让字符串重复出现N次并拼接起来。
print(3 * "我想吃饺子")
4.3 布尔类型(bool)
布尔类型中共有两个值:True / False
print(1 > 2) print(False) print(1 == 1) print(True)
name = input("请输入你的用户名:") if name == "alex": print("用户登录成功") else: print("用户登录失败")
补充:
1 > 2 1 == 3 "ayden" == "andy" 1 == "andy" 1 > "andy" 是无法进行比较大小
4.4 类型转换
上文数据类型int/str/bool有了初步了解,他们都有自己不同的定义方式。
-
int,整型定义时,必须是数字且无引号,例如:5、8、9
-
str,字符串定义时,必须用双引号括起来,例如:”中国”、”666”
-
bool,布尔值定义时,只能写True和False
不同的数据类型都有不同的功能,例如:整型可以加减乘除 而 字符串只能加(拼接)和乘法。 如果想要做转换可遵循一个基本规则:想转换什么类型就让他包裹一些。
例如:str(666) = "666"是将整型转换为字符串、int(“888”)是将字符串转 888。
转换为整形:
# 字符串转换为整形(度可度之人) int("666") int("999") "6" + "9" 的结果应该是: "69" int("6") + int("9") 的结果是:15 int("ayden是sb") 报错 # 布尔类型转换为整形 int(True) 转换完等于 1 int(False) 转换完等于 0
转换为字符串
# 整形转字符串 str(345) str(666) + str(9) 结果为:"6669" # 布尔类型转换为字符串 str(True) "True" str(False) "False"
转换为布尔类型
# 整形转布尔 bool(1) True bool(2) True bool(0) False bool(-10) True # 字符串转布尔 bool("alex") True bool("砂玻帮你") True bool("") False bool(" ") True
三句话搞定类型转换:
- 其他所有类型转换为布尔类型时,除了 空字符串、0以为其他都是True。
- 字符串转整形时,只有那种 "988" 格式的字符串才可以转换为整形,其他都报错。
- 想要转换为那种类型,就用这类型的英文包裹一下就行。
```
str(...)
int(...)
bool(...)
```
5. 变量
变量,其实就是我们生活中起别名和外号,让变量名指向某个值,格式为: 【变量名 = 值】,以后可以通过变量名来操作其对应的值。
name = "andy"
print(name) # andy
age = 18
name = "ayden"
flag = 1 > 18
address = "宁波鄞州" + "高教园区"
addr = "宁波鄞州" + "高教园区" + name # "宁波鄞州高教园区ayden"
print(addr)
print(flag)
age = 18
number = 1 == 2
注意:
-
给变量赋值
age = 18
-
让age代指值
age=18
5.1 变量名的规范
age = 18 name = "alex" flag = 1 > 18 address = "北京昌平" + "沙河"
三个规范(只要有一条就会报错):
-
变量名只能由 字母、数字、下划线 组成。
-
不能以数字开头
na9me9 = "ayden"
-
不能用Python内置的关键字
def = "ayden" break = 123
[‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
两个建议:
-
下划线连接命名(小写)
father_name = "yongwuzheng" brother_age = 19
-
见名知意
age = 18 color = "red" current_user_name = "吉诺比利"
5.2 变量内存指向关系
通过学习上述变量知识让我们对变量了有了初步认识,接下来我们就要从稍稍高级一些的角度来学习变量,即:内存指向(在电脑的内存中是怎么存储的)。
情景一
name = "wupeiqi"
在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。
情景二
name = "wupeiqi" name = "alex"
在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。然后又再内存中创建了一块域保存字符串”alex”,name变量名则指向”alex”所在的区域,不再指向”wupeiqi”所在区域(无人指向的数据会被标记为垃圾,由解释器自动化回收)
情景三
name = "wupeiqi" new_name = name
在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域。new_name变量名指向name变量,因为被指向的是变量名,所以自动会转指向到name变量代表的内存区域。
情景四
name = "wupeiqi" new_name = name name = "alex"
在计算机的内存中创建一块区域保存字符串”wupeiqi”,name变量名则指向这块区域(灰色线), 然后new_name指向name所指向的内存区域,最后又创建了一块区域存放”alex”,让name变量指向”alex”所在区域.
情景五
num = 18 age = str(num)
在计算机的内存中创建一块区域保存整型18,name变量名则指向这块区域。通过类型转换依据整型18再在内存中创建一个字符串”18”, age变量指向保存这个字符串的内存区域。
6. 注释
写代码时候,如果想要对某写内容进行注释处理,即:解释器忽略不会按照代码去运行。
- 单行注释
```python
# 声明一个name变量
name = "alex"
age = 19 # 这表示当前用户的年龄
注意:快捷点 command + ? 、 control + ?
```
- 多行注释
```python
# 声明一个name变量
# 声明一个name变量
# 声明一个name变量
name = "alex"
"""
多行注释内容
多行注释内容
多行注释内容
"""
age = 19
```
7. 输入
输入,可以实现程序和用户之间的交互。
```python
# 1. 右边 input("请输入用户名:") 是让用户输入内容。
# 2. 将用户输入的内容赋值给name变量。
name = input("请输入用户名:")if name == "alex":
print("登录成功")
else:
print("登录失败")
``````python
data = input(">>>")
print(data)
```
**特别注意**:用户输入的任何内容本质上都是字符串。
1. 提示输入姓名,然后给姓名后面拼接一个“烧饼”,提示输入姓名,然后给姓名后面拼接一个“烧饼”,最终打印结果。
```python
name = input("请输入用户名:")
text = name + "烧饼"
print(text)
```
2. 提示输入 姓名/位置/行为,然后做拼接并打印:xx 在 xx 做 xx 。
```python
name = input("请输入用户名:")
address = input("请输入位置:")
action = input("请输入行为:")
text = name + "在" + address + action
print(text)
```
3. 提示输入两个数字,计算两个数的和。
```python
number1 = input("请输入一个数字:") # "1"
number2 = input("请输入一个数字:") # "2"
value = int(number1) + int(number2)
print(value)
```
8.条件语句
if 条件 :
条件成立之后的代码...
条件成立之后的代码...
条件成立之后的代码...
else:
条件不成立之后执行的代码...
条件不成立之后执行的代码...
条件不成立之后执行的代码...
name = input("请输入用户名:") if name == "alex": print("sb") else: print("db")
提醒:统一缩进问题(都是使用四个空格 = tab)。
name = input("请输入用户名:") if name == "alex": print("sb") print("sb") else: print("db")
8.1 基本条件语句
-
示例1
print("开始") if True: print("123") else: print("456") print("结束") # 输出结果 开始 123 结束
-
示例2
print("开始") if 5==5: print("123") else: print("456") print("结束")
-
示例3
num = 19 if num > 10: print("num变量对应值大于10") else: print("num变量对应值不大于10")
-
示例4
username = "wupeiqi" password = "666" if username == "wupeiqi" and password == "666": print("恭喜你,登录成功") else: print("登录失败")
-
示例5
username = "wupeiqi" if username == "wupeiqi" or username == "alex": print("VIP大会员用户") else: print("普通用户")
-
示例6
number = 19 if number%2 == 1: print("number是奇数") else: print("number是偶数")
number = 19 data = number%2 == 1 if data: print("number是奇数") else: print("number是偶数")
-
示例7
if 条件: 成立
print("开始") if 5 == 5: print("5等于5") print("结束")
8.2 多条件判断
if 条件A:
A成立,执行此缩进中的所有代码
...
elif 条件B:
B成立,执行此缩进中的所有代码
...
elif 条件C:
C成立,执行此缩进中的所有代码
...
else:
上述ABC都不成立。
num = input("请输入数字") data = int(num) if data>6: print("太大了") elif data == 6: print("刚刚好") else: print("太小了")
score = input("请输入分数") data = int(score) if data > 90: print("优") elif data > 80: print("良") elif data > 70: print("中") elif data > 60: print("差") else: print("不及格")
8.3 条件嵌套
if 条件A: ... elif 条件B: ...
if 条件A: if 条件A1: ... else: ... elif 条件B: ...
模拟10086客服
print("欢迎致电10086,我们提供了如下服务: 1.话费相关;2.业务办理;3.人工服务") choice = input("请选择服务序号") if choice == "1": print("话费相关业务") cost = input("查询话费请按1;交话费请按2") if cost == "1": print("查询话费余额为100") elif cost == "2": print("交互费") else: print("输入错误") elif choice == "2": print("业务办理") elif choice == "3": print("人工服务") else: print("序号输入错误")
标签:...,name,Python,基础,else,语法,print,字符串,input From: https://www.cnblogs.com/zhengyongwu/p/17835989.html