python-fullstack-s13-day03-python基础

一.python基本数据类型

1. int ==> 整数. 主要用来进行数学运算
2. str ==> 字符串, 可以保存少量数据并进行相应的操作
3. bool==>判断真假, True, False
4. list==> 存储大量数据.用[ ]表示
5. tuple=> 元组, 不可以发生改变 用( )表示
6. dict==> 字典, 保存键值对, 一样可以保存大量数据
7. set==> 集合, 保存大量数据. 不可以重复. 其实就是不保存value的dict

二. 整数(int)

1.在python3中所有的整数都是int类型
2.整数可以进行的操作:
  bit_length(). 计算整数在内存中占用的二进制码的长度

1 a = 3
2 print(a.bit_length())  # ===> 2
3 b = 10
4 print(b.bit_length())  # ===> 4

三. 布尔值(bool)

取值只有True, False. bool值没有操作.
转换问题:
str => int           int(str)
int => str        str(int)
int => bool   bool(int). 0是False 非0是True
bool=>int     int(bool) True是1, False是0
str => bool   bool(str) 空字符串是False, 不空是True
bool => str   str(bool) 把bool值转换成相应的"值"

 1 a = "123"
 2 print(int(a),type(int(a)))
 3 b = 123
 4 print(str(b),type(str(b)))
 5 
 6 print(bool(0))
 7 print(bool(15))
 8 print(int(False))
 9 print(int(True))
10 
11 print(bool(""))
12 print(bool("hello"))
13 print(str(0))
14 print(str(1))

四. 字符串(str)

把字符连成串. 在python中用', ", ''', """引起来的内容被称为字符串.
4.1 切片和索引
1. 索引. 索引就是下标. 切记, 下标从0开始 

1 s = "今天很萌,明天也萌"
2 print(s[0])  # 索引
3 print(s[5])
4 print(s[-1])  # 反向索引 
5 print(s[-5])

2. 切片, 我们可以使用下标来截取部分字符串的内容
语法: str[start: end]
规则: 顾头不顾腚, 从start开始截取. 截取到end位置. 但不包括end 

步长: 如果是整数, 则从左往右取. 如果是负数. 则从右往左取. 默认是1

切片语法:
str[start:end:step]
start: 起始位置
end: 结束位置
step:步长

 不设置步长:

1 print(s[2:5])
2 print(s[5:8])
3 print(s[0:8])
4 print(s[:8])
5 print(s[10:])
6 print(s[:])
7 print(s[5:99])
8 print(s[-5:])
9 print(s[-5:0])

设置步长:

1 print(s[0:7:2])
2 print(s[1:5:3])
3 print(s[-8:-2:2])
4 print(s[-1:-6:-1])

4.2 字符串的相关操作方法
切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的
1. 大小写转来转去 

1 s = "alex and wusir gaoji"
2 print(s.capitalize())
3 print(s.title())
4 print(s.upper())
5 s1 = "Hello World!"
6 print(s1.lower())
7 print(s1.swapcase())

2. 切来切去

 1 s = "alex"
 2 print(s.center(15,"*"))
 3 
 4 s1 = "al\twusir"
 5 print(s1.expandtabs())
 6 
 7 s2 = "    马化   腾 ,  张x忠,刘华强   "
 8 print(s2.strip())
 9 print(s2.lstrip())
10 print(s2.rstrip())
11 
12 s3 = "马化腾哈哈哈哈哈哈马化腾"
13 print(s3.strip("马化腾"))
14 print(s3.strip("马化"))
15 print(s3.replace("马化腾","马云"))
16 print(s3.replace("马化腾","马云",1))
17 
18 s4 = "李嘉诚_王健林_马云_刘强东_alex"
19 lst = s4.split("_")
20 print(s4.split("_"))
21 print(s4.split("_",2))
22 
23 s5 = "李嘉诚王健林马化腾周杰伦"
24 print(s5.split("李嘉诚王健林马化腾周杰伦"))
25 print(s5.split("马云"))
26 # print(s5.split("")) 用空字符串当作刀会报错

3. 格式化输出

1 # 格式化输出
2 print("%s很帅,你信么?" % "")
3 print("{}很帅,{}信么?不信给你{}钱".format("alex","we",100))
4 print("{1}很帅,{0}信么?不信给你{2}钱".format("alex","we",100))
5 print("{name1}很帅,{name2}信么?不信给你{money}钱".format(name1="alex",name2="we",money=100))

4. 查找

1 s = "alex wusir taibai 女神"
2 print(s.count("ai"))
3 s2 = "明天周末了,你们打算干什么去?"
4 print(s2.find(""))
5 s3 = "明天周末了,你们打算干什么去了?"
6 print(s3.find(""))  # 仅仅找到第一个
7 s4 = "下周我们要考试了,你们慌不慌?"
8 print(s4.index(""))
9 # print(s4.index("你大爷的"))  ValueError: substring not found

5. 条件判断

 1 s = "写个啥呢? 哈哈哈"
 2 
 3 # 判断字符串是否以xxx开头
 4 print(s.startswith("写个啥呢"))
 5 # 判断字符串是否以xxx结尾
 6 print(s.endswith("哈哈哈"))
 7 
 8 # 是否是字母和数字组成
 9 s = "abcdefg"
10 print(s.isalnum())  # 数字和字母
11 print(s.isdigit())  # 数字
12 print(s.isalpha())  # 字母
13 
14 s = "壹贰"
15 print(s.isnumeric())    # 几乎所有数字
16 print(s.isdigit())  # 阿拉伯数字

6. 计算字符串的长度

 len(str)

7. 迭代
我们可以使用for循环来便利(获取)字符串中的每一个字符
语法:
for 变量 in 可迭代对象:
  pass
可迭代对象: 可以一个一个往外取值的对象

1 words = "我们明天放假了!"
2 for word in words:
3     print(word)

 

猜你喜欢

转载自www.cnblogs.com/bug-ming/p/9122737.html