ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

定要过python二级 第二套

2021-07-17 21:03:40  阅读:305  来源: 互联网

标签:python 第二套 定要 列表 ls eval 字符串 input 输入


1.name=random.choice(brandlist)    与第一套中的  random.randint()

2.

eval(input())

 

看到一段代码,判读输入的数字,用的是eval(input()),查了一下,原来input()会把所有输入值,包括数字,视为字符串,而eval()会去掉字符串最外层的引号,然后当做Python语句执行[mark:语句or表达式,应该是表达式!],直观理解是:看起来像数字的字符串变成数字了。。。

复制代码
>>> a = input()
123
>>> type(a)
<class 'str'>
>>> b = eval(input())
456
>>> type(b)
<class 'int'>
>>>
复制代码

 一个反例

1 2 3 >>> a = eval("'pybook'") >>> a 'pybook'

所以本质上,eval是去一层引号,然后按语句执行,eval(input())本质是一个取输入数字的技巧

 

如果不用eval,怎么取输入的数字?

可以用int, float转数据类型,但效果不如eval

 

一点补充说明

对于eval(input()),input隐含会在输入最外层加一层引号,即把输入视为一个字符串,eval隐含会去最外层引号,如果输入的字符串带了引号,则这个引号会保留,看下面的例子

>>> guess = eval(input())

'0x452//2' >>> guess '0x452//2' #保留输入的引号 >>> guess = input() '0x452//2' >>> guess "'0x452//2'" #2层引号 >>>   就是上面的意思 3.

 

 但是我不知道为什么  在file  里面输入相同的代码   没有加"  "   而是原样输出


3. c 语言     判断输入字符的个数

printf("请输入一行字符:&gt;");

 

while((c=getchar())!='\n')

a=[]
b=0
a=input()

for i in a:
    if i not  in " \n , .'":
       b+=1
print(b)

4.

(1)以字符串形式输出,所以需要我们将变量转化成string型!但是,需要注意的是,使用的符号是用于字符串连接的“+”而不是分割字符串和变量的“,”

5.https://blog.csdn.net/qq_46018836/article/details/105199040   讲 了 input()

在初见input()时,我发现了 variable = input(prompt)这个输入格式,一下子惊如天人。觉得Python的input()函数的用户交互真是友善,从此不再需要再像其他一些编程语言一样单独写一个用户提示语。以下面一个片段为例
可以看到,当我们敲击Enter以后,屏幕上会显示我们编写的提示性语言,并等待用户输入。这样给交互性程序编写带来了便利。

解决我的疑惑

 6.

# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码

import jieba
s = input("请输入一个字符串")

n = len(s)
m = len(jieba.lcut(s))
print("中文字符数为{},中文词语数为{}。".format(n, m))

7.屏幕输出总额(保留整数)。  保留整数就是无小数点 122.0不可以

 

 (1)即使int(input())  之后也要去  int  (160*0.9*b)  为什么因为0.9   又一次把  你最开始弄得int  以经变成浮点型了

 

8. 记住  turtle  画图形   它的方向就是    水平·向右  

9. turtle.seth(d)   与第一套的  turtle.right(90)    旋转的角度有区别

10.  将  字符串  转化为列表,  names= input(“ 请输入: ”) 

ls= names.split()

ls 现在已经是 列表了

为什么把字符串弄成; 字符串即使切片也是比较难去  取出里面的元素,,,怎么说呢就是    你化成列表之后 ,,你就可以去。通过列表的索引去   取出他们

11.列表将  值  赋给 键的方法    d[i] =

 12.turtle.pensize(2) 像素为2

13.d={}

d[i]  我猜 d[i]  就是    值的意思    i               for  i   in ls:       i   就是   键的含义

 14.  key=    lambda  x:x[1]     怎么说   lambda x   这是一个匿名函数这是一块的,lambda 给一个x ,x是列表      把x列表第一个元素放进去,,,返回x[1]

返回的是 2,,  2,1  进行反转,,然后, 2,3 进行反正转  (reverse=Ture)

15.for  k  in ls :

     printf('%s:%d',a,b) c 语言

但是就是怎么说呢,就是与python   的 print(''  {}  :{} " . format(k[0]),k[1]))  就是所谓的格式化输出

16.我在这里在说一次   第二套的   简单应用第二题。  你在反复的听几遍  你会对列表转化,等等sort  函数  以及get  函数都会有一个会了

17.

 

 

 如果在PY 301-1.py  之下打开文件,,那么sensor.txt,f=open(sensor.txt ,'r')

这时候不用去,写sensor.txt 具体的位置,因为就是相对路径,所以是直接写,

绝对路径才需要写具体的,它的在哪。(记得把你赋复制过来的)E:\小黑python\xhktsoft\xhktPython\xhkt\ms650000001   改为’/‘/’/‘/’

18.f= open('sensor.txt','r',encoding='utf-8')

我也不知道为什么第三道题  第一问要加   ‘utf-8’    设置编码形式

19.f.readlines() ,,     它处理过的结果就是  一个列表

 

 但是后面都有  \n,,,,且 ,,,, 逗号都有。   ‘    , , ,  ’

 

 20.python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。

w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。

 

 不是  f =f.open('.txt','w')   open函数就是只是打开文件  至于你说的创建文件,,,,,,是以写的形式 。  打开  然后没有文件夹创建一个

21.至于第三道第一问为什么用,,,,f.read()  f.readlines() 第一个是为了统计所有的字符  

 22.https://www.runoob.com/python/python-func-open.html   open()  函数    菜鸟课程

23.来一个小技巧就是,,,ls.  之后你去按tab  键之后,,就是怎么说呢,tab键你会知道这个ls譬如是列表类型,,你会对这个列表进行什么操作。会用到·什么函数。

24.

 

 a=line.strip('\n').split(',')

strip

 

 看看上图,就可以知道

25.  就是怎么说呢。。。。。。d={}

怎么给空列表里面,加键:值

就是的用get方法加循环

for i  in  ls

     d[i]=d.get(i,0)+1

这个它你输出d 之后就是会产生,{‘里面胡:3   ,llklk:2}

键值都有l

26.排序的套路  前提就是把字典转化

 

 

 

27.字典没有顺序    字典转化为列表     ls=list(d.items())   套路记清楚

28.   排序的套路  前提就是把字典转化。ls=list(d.items())   不可以ls=list(d)   得先把  化成元组d.iems【(),()】 之后  【(),(),()】

列表才可以排序ls.sort(key=lambda x :x[1] ,reverse=Ture)    

 29。拍好序之后   就是格式化输出了

注意列表的输出 也是得    利用循环  (这里是输出并写入)

for k  in ls

fo.write(’{} ,{ } \n'.  format(k[0],k[1]))

 

 

 

 

标签:python,第二套,定要,列表,ls,eval,字符串,input,输入
来源: https://www.cnblogs.com/a-hhxx/p/15019692.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有