极简生活,极简编程,简到极致,就是完美!
初体验前天准备学人工智能,先看了算法,直接被劝退,还是先搞一搞python吧!
然后就在CSDN上发现了Python技能树,这个东西,点击去瞄了一眼,刷一下题,刷了,但又没刷。???,你在搞,往下看就明白了!
- 1.预备知识
- 2.基础语法
1.预备知识写代码是在jupyter notebook ,下面是导出的md文件,我的练习xxx.ipynb文件会在结尾给出。放心,不是百度网盘,点击去直接下载就行了!
# 1. 输出 "Hello,World!" 字符串
print("Hello,World!")
Hello,World!
# 2.1 Python 过程性代码,用循环合并“猴子在苹果树下打架”文本并打印
tokens = [
{
"key": "猴子在"
},
{
"key": "苹果树下"
},
{
"key": "打架"
}
]
result = []
for token in tokens:
result.append(token["key"])
# print(result)
print("".join(result))
猴子在苹果树下打架
# 2.2 使用 Python 函数 组织代码,输出“猴子在苹果树下打架”
def monkey_concat(tokens):
result=[]
for token in tokens:
result.append(token['key'])
print("".join(result))
monkey_concat(tokens=tokens)
猴子在苹果树下打架
# 2.3 使用 Python Class 组织代码,输出“猴子在苹果树下打架”
class Monkey(object):
tokens=[]
def __init__(self,tokens):
self.tokens=tokens
def monkey_assa(self):
result = []
for token in tokens:
result.append(token['key'])
print("".join(result))
def main(tokens):
monkey = Monkey(tokens)
monkey.monkey_assa()
main(tokens=tokens)
猴子在苹果树下打架
# 3. 模块导入
from datetime import datetime
today = datetime.now()
today_str = str(today)
print(today)
print(today_str)
print("{}-{}-{} {}:{}:{} ".format(today.year, today.month,
today.day, today.hour, today.minute, today.second))
2021-10-05 06:09:55.732134 2021-10-05 06:09:55.732134 2021-10-5 6:9:552.基础语法
# 1.缩进规则
def hello():
print("hello")
hello()
hello
# 2.1 函数:使用递归循环输出Hello World的每个字符,循环5次
def sayHelloFive(input_str, count=5):
print(input_str)
if(count == 1):
return
if(count > 1):
return sayHelloFive(input_str,count-1)
sayHelloFive("Hello World")
Hello World Hello World Hello World Hello World Hello World
# 2.2 函数:计算阶乘
def jiecheng(num):
result=1
for i in range(num,1,-1):
result*=i
return result
result= jiecheng(3)
print(result)
6
# 3 类:自定义k-v容器类,支持get,set,keys,count,foreach
class KYCollection(object):
init_dict={}
def get(self,key):
return self.init_dict[key]
def set(self,key,value):
self.init_dict[key]=value
def keys(self):
return self.init_dict.keys()
def count(self):
return len(self.init_dict)
def foreach(self):
for ele in self.init_dict:
print("key: {} value: {}".format(ele,self.init_dict[ele]))
kvc=KYCollection()
kvc.set(1,"zhangsan")
kvc.set(2,"lisi")
print(kvc.get(1))
print(kvc.keys())
print(kvc.count())
kvc.foreach()
zhangsan dict_keys([1, 2]) 2 key: 1 value: zhangsan key: 2 value: lisi
# 4.1 流程控制:分支选择,判断一个数,是否/2=5
def isDev2Equal5(num):
if num/2==5:
return True
else:
return False
print(isDev2Equal5(10))
print(isDev2Equal5(11))
True False
# 4.2 流程控制:循环播放:打印列表信息
str_list=["zhngsan","lisi","wangwu"]
for ele in str_list:
print(ele)
for index in range(0,len(str_list)):
print(str_list[index])
zhngsan lisi wangwu zhngsan lisi wangwu
# 5.1 常用数据类型:字符串
news = " 张三假扮张美美,在网上骗程序猿的钱和色! "
print(news)
# 1.分割
splits=news.split(",")
print(splits)
# 2.分片截取
print(news[0:len(news)])
# 3.去除空格
print(news.strip())
print(news.lstrip())
print(news.rstrip())
# 4.格式化
news2= "张三假扮{},在网上骗程序猿的钱和色!"
print(news2.format("张小姐"))
# 5.遍历每一个字符
for char in news:
print(char)
张三假扮张美美,在网上骗程序猿的钱和色! [' 张三假扮张美美', '在网上骗程序猿的钱和色! '] 张三假扮张美美,在网上骗程序猿的钱和色! 张三假扮张美美,在网上骗程序猿的钱和色! 张三假扮张美美,在网上骗程序猿的钱和色! 张三假扮张美美,在网上骗程序猿的钱和色! 张三假扮张小姐,在网上骗程序猿的钱和色! 张 三 假 扮 张 美 美 , 在 网 上 骗 程 序 猿 的 钱 和 色 !
# 5.2 常用数据类型:元组
zhngsan_tuple = ("张三", 18, "喜欢白嫖", "外号:法外狂徒")
# 0. tuple单元素申明注意”,“
singe_tuple = ("single",)
singe_tuple_error = ("single_error")
print(type(singe_tuple))
print(type(singe_tuple_error))
# 1. add:+
tuple2 = zhngsan_tuple+("女装:张美美",)
print(tuple2)
# 2.delete:切片
name_tuple = zhngsan_tuple[0:1]
print(name_tuple)
del tuple2 #tuple 直接从内存中被干掉,引用也没了,所以下面:
# print(tuple2) :NameError: name 'tuple2' is not defined
# 3.update: 直接干掉原来的,生成一个新的tuple
# 4.query
query_element = "张三"
if(query_element in zhngsan_tuple):
print("查到了这个元素!")
else:
print("tuple里没有这个元素!")
# 5.foreach query
for ele in zhngsan_tuple:
print(ele)
('张三', 18, '喜欢白嫖', '外号:法外狂徒', '女装:张美美') ('张三',) 查到了这个元素! 张三 18 喜欢白嫖 外号:法外狂徒
# 5.3 常用数据类型:列表
name_list=["张三","李四","张美美"]
# 1.add
name_list.append("雷姆")
# 2.delete
del name_list[0]
# 3.update
name_list[0]="李导"
# 4.query
print(name_list[2])
# 5. foreach query
for ele in name_list:
print(ele)
# 6. clear
name_list.clear()
# print
print(name_list)
雷姆 李导 张美美 雷姆 []
# 5.4 常用数据类型:字典
info_dict = {
"user1": {
"name": "张三",
"hobby": "喜欢白嫖",
"nick_name": "法外狂徒"
},
"user2": {
"name": "李四",
"hobby": "跟着张三白嫖",
"nick_name": "李导"
}
}
# 1.add
info_dict["user3"]={
"name":"张美美",
"hobby":"装女人骗程序猿",
"nick_name":"小美"
}
# 2.delete
del info_dict["user1"]
# 3.update
info_dict["user3"]={
"name":"张美美",
"hobby":"装女人骗程序猿色!",
"nick_name":"小美"
}
# 4.query
print(info_dict["user3"])
print(info_dict["user3"]["hobby"])
# 5.foreach query
for key in info_dict:
print("key:{} value:{}".format(key,info_dict[key]))
{'name': '张美美', 'hobby': '装女人骗程序猿色!', 'nick_name': '小美'}
装女人骗程序猿色!
key:user2 value:{'name': '李四', 'hobby': '跟着张三白嫖', 'nick_name': '李导'}
key:user3 value:{'name': '张美美', 'hobby': '装女人骗程序猿色!', 'nick_name': '小美'}
# 6. 内置类:list列表元素去重,并过滤大于3的数字
num_list = [1, 2, 3, 6, 7, 8, 8, 8, 7]
# 1.去重,直接用set
num_set = set(num_list)
print(num_set)
# 2.过滤
res_list = []
for ele in num_set:
if ele > 3:
res_list.append(ele)
print(res_list)
{1, 2, 3, 6, 7, 8}
[6, 7, 8]
# 7. 常用内置函数
# 1.数学函数
print(abs(-1))
print(max(1, 2, 3))
print(pow(2, 10))
# 2.转换函数
tuple1 = (1, 2, 3)
tuple2 = ("aaa", "bbb", "ccc")
# 2.1 拉链函数
print(list(zip(tuple1, tuple2)))
# 2.2 映射函数
tuple3 = map(lambda x: x+10, tuple1)
print(list(tuple3))
# 2.3 过滤函数
tuple4 = filter(lambda x: x > 1, tuple1)
print(list(tuple4))
1 3 1024 [(1, 'aaa'), (2, 'bbb'), (3, 'ccc')] [11, 12, 13] [2, 3]
个人感觉还挺不错的,后续的体验与练习也会写出来,这期的资料文件在:预备知识+基础语法.zip。下期见,byebye!



